在 vue.js 中编写全局函数有四种方法:通过 vue.prototype、全局混入、plugin、provide/inject。
Vue 中编写全局函数
在 Vue.js 中,我们可以通过多种方式编写全局函数。
1. 通过 Vue.prototype
Vue.prototype 是 Vue 实例的原型对象,我们可以在其上添加属性和方法来创建全局函数。例如:
Vue.prototype.myGlobalFunction = function () {
// 全局函数的实现
};
2. 通过全局混入
全局混入可以在所有组件中使用,我们可以使用它来添加全局函数。在 main.js 文件中添加:
import Vue from '<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/15721.html" target="_blank">vue</a>';
import { myGlobalFunction } from './myGlobalFunction';
Vue.mixin({
methods: {
myGlobalFunction,
},
});
3. 通过 Plugin
Plugin 可以为 Vue 实例添加附加功能,包括全局函数。创建名为 myPlugin.js 的文件并将其导出:
export default {
install(Vue) {
Vue.prototype.$myGlobalFunction = () => {
// 全局函数的实现
};
},
};
在 main.js 文件中安装 Plugin:
import myPlugin from './myPlugin';
Vue.use(myPlugin);
4. 通过 provide/inject
provide/inject 允许在父组件和子组件之间传递数据和方法。我们可以使用它来向所有子组件提供一个全局函数:
// 父组件
<template><my-child></my-child></template><script>
export default {
provide() {
return {
myGlobalFunction, // 全局函数
};
},
};
</script>
// 子组件
<template><button></button>
</template><script>
export default {
inject: ['myGlobalFunction'],
};
</script>