Vue – 自定义函数挂载到全局方法

  • Post author:
  • Post category:vue


在Vue中可以将自定的方法挂载到全局的方法中,这样在全局的页面都可以不通过引用,而直接使用自定义的方法了,在vue中使用非常广泛。


方法一:使用Vue.prorotype

第一中方法与定义全局变量一样,在main.js中进行引入(但因为main.js是入口文件,不推荐在其中写入其他逻辑代码)。在main.js中写入函数:

Vue.prototype.getPdf = function (){
  ...
}

这样在所有的组件中便可以调用函数了。

this.getPdf()


方法二:使用exports.install+Vue.prototype(即自定义插件方式 推荐)



在htmlToPdf.js文件中创建自己的自定义的方法getPdf()

import upload from './ajax-upload.vue'
let ajaxUpload = {}
// eslint-disable-next-line no-unused-vars
ajaxUpload.install = function (Vue, options) {
  Vue.prototype.$msg = 'Hello I am test.js'
  Vue.prototype.$myMethod = function (arr) {
    if (arr.length < 0) {
      return false
    } else {
      arr = arr.join('连接你我')
      return arr
    }
  }
  Vue.component(upload.name, upload) // 也可以定义全局组件
}
export default ajaxUpload

在main.js引入并使用:

import upload from './upload';
Vue.use(upload);


方法三:使用全局变量模块文件

Global.vue文件:

<script>
    const token='12345678';

    export default {
        methods: {
            getToken(){
                ....
            }
        }
    }
</script>

在需要的地方引入全局变量模块文件,然后通过文件里面的变量名称获取全局变量参数值

<script>
import global from '../../components/Global'//引用模块进来
export default {
    data () {
        return {
            token:global.token
        }
    },
    created: function() {
        global.getToken();
    }
}
</script>

转自:https://www.cnblogs.com/youqianren/p/14412246.html



版权声明:本文为trustnature原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。