一、通常用来为Vue添加全局功能
- 添加全局方法或者属性。如vue-custom-element
- 添加全局资源:指令、过滤器、过度等。如vue-touch
- 通过全局混入来添加一些组件选项。如vue-router
- 添加Vue实例方法,通过把他们添加到Vue.prototype上实现
- 一个库,提供自己的API。如vue-router
二、使用插件方法
通过全局方法Vue.use()使用方法,它需要你调用new Vue()时启动应用之前完成。
三、插件原理
本质上插件就是一个对象,在对象里面调用 install 方法
- Vue.js的插件应该暴露一个 install 方法,这个方法的第一个参数是Vue构造器,第二个参数是一个可选的选项对象
MyPlugin.install = function(Vue, options) {
// 1 、添加全局方法或属性
Vue.myGLobalMethod = function(){ };
// 2、添加全局资源
Vue.directive('my-directive', {
bind(el, binding, vnode, oldVnode) { }
});
// 3、注入组件选项
Vue.mixin({
created: function(){ }
});
// 4、添加实例方法
Vue.prototype.$myMethod = function(methodOptions) { }
}