插件通常会为Vue添加全局功能,插件的范围没有限制,一般有以下几种:
1 添加全局方法或者属性 vue-element
2 添加全局资源:指令/过滤器/过渡等vue-touch
3 通过全局mixin方法添加一些组件选项 vuex
4 添加Vue实例方法,通过把它们添加到Vue.prototype上实现。
5 一个库,提供自己的API,同时提供上面提到的一个或者多个功能,如 vue-router
Vue.js的插件应当有一个公开方法install,这个方法的第一个参数是Vue构造器,第二个参数是一个可选的选项对象:
使用插件
通过全局方法Vue.use()使用插件:
Vue.use(myPlugin);
也可以传入一个选项对象:
Vue.use(myPlugin,{someOption:true})
Vue.use 会自动阻止注册相同插件多次,届时只会注册一次该插件。
一些插件,如 vue-router 如果Vue是全局变量则自动调用Vue.use().不过在模块环境中应当始终显式调用Vue.use():