Vue 插件
插件 (Plugins) 是一种能为 Vue 添加全局功能的工具代码。当我们需要在整个应用中普遍使用某些功能时,例如添加全局方法、全局组件、全局指令或为 app 实例添加 property 时,插件就非常有用。
一个典型的例子是 vue-router。当我们执行 app.use(router) 时,实际上就是在安装 vue-router 插件。这个插件会为我们的应用提供 $router 和 $route property,并注册 <router-link> 和 <router-view> 全局组件。
编写一个插件
一个插件可以是一个拥有 install() 方法的对象,也可以直接是一个函数,它将被作为 install() 方法。这个 install 方法会接收到 app 实例作为第一个参数,以及用户传入的选项作为第二个参数。
下面是一个简单的插件示例,它为所有组件提供一个全局的 i18n (国际化) 翻译函数。
src/plugins/i18n.js
使用插件
插件通过 app.use() 方法来安装。它必须在 app.mount() 被调用之前使用。
src/main.js
现在,我们就可以在任何组件的模板中使用 $translate 了。
MyComponent.vue
插件是一种强大而整洁的方式,用于组织和分发可在整个 Vue 应用中复用的代码,避免了污染全局作用域,并保持了逻辑的封装性。