Vuejs2 如何在Vue.js中创建全局函数?

Vuejs2 如何在Vue.js中创建全局函数?,vuejs2,vue-component,Vuejs2,Vue Component,我想在我的应用程序中全局使用一些功能。 我的问题的大多数答案都是关于Vue Mixin的。虽然我用它,但它不能解决我的问题。这是我的尝试 Vue.mixin({ 方法:{ gFun(){ 控制台日志(“工作”); }, } }) const app=新的Vue({ el:“#应用程序”, 数据:{ }, 创建(){ gFun(); }, 方法:{ } }); Vue表示“引用错误:未定义testMixin”。 我想要的只是能够全局使用gFun()(而不是像这样使用.gFun())。请解释一下我

我想在我的应用程序中全局使用一些功能。
我的问题的大多数答案都是关于Vue Mixin的。虽然我用它,但它不能解决我的问题。这是我的尝试

Vue.mixin({
方法:{
gFun(){
控制台日志(“工作”);
},
}
})
const app=新的Vue({
el:“#应用程序”,
数据:{
},
创建(){
gFun();
},
方法:{
}
});
Vue表示“引用错误:未定义testMixin”。
我想要的只是能够全局使用gFun()(而不是像这样使用.gFun())。请解释一下我的想法。

使用或不使用Vue Mixin都可以。

这不是Vue的问题

您可以使用如下方式在javascript中创建全局函数:

window.gFun = window.gFun || () => console.log("Works");

您可以像
函数functon_name(parameters){…}
那样声明全局函数,尝试像参数一样传递vue实例,以便访问全局函数中的属性,如下所示

Vue.config.devtools=false;
Vue.config.productionTip=false;
window.gFun=函数(vm){
console.log(vm.message);
}
const app=新的Vue({
el:“#应用程序”,
数据:{
留言:“你好!”
},
创建(){
gFun(本);
},
方法:{
}
})

一种方法是使用您建议的Vue。另一个很好的方法是使用

请注意我是如何声明它们的,以及我如何调用两个全局变量之间的差异,特别是插件选项中的美元符号($)。
this.gMixinFun()
this.$gPluginFun()
将在Vue实例选项中作为全局方法提供

Vue.config.productionTip=false;
Vue.config.devtools=false;
//选项1:使用Mixin
米辛({
方法:{
gMixinFun:function(){
return“这是一个mixin测试”
}
}
});
//选项2:使用插件
常量插件={
安装(){
Vue.gPluginFun=()=>'这是一个插件测试'//Vue.gPluginFun()
Vue.prototype.$gPluginFun=()=>'这是一个插件测试'//这。$gPluginFun()
}
}
Vue.use(插件)
const app=新的Vue({
el:“#应用程序”,
创建(){
log(“使用mixins=>”,this.gMixinFun());
console.log(“使用插件=>”,this.$gPluginFun());//或者您可以使用Vue.gPluginFun()而不带美元($)符号
}
})

如果这对您有效,请将其标记为正确答案。谢谢:)