一.组件和插件的区别
组件:单个项目中多个页面经常复用的代码,可以提取成一个公共代码进行使用,但是要不停 的通过components注册;
插件:多个项目,并且使用率很高的组件,全局注册后就可以在相应页面使用;
总结:插件可以封装组件,组件可以暴露数据给插件。
二.插件分类
由官网可知,一般分为四类编写方法:
export default {
install(Vue, options) {
//1.添加全局方法或属性,eg:vue-custom-element
Vue.myGlobalMethod = function() {}
//2.添加全局资源:指令/过滤器/过渡等,eg:vue-touch
Vue.directive('my-ddirctive', {
bind(el, binding, vnode, oldVnode)
})
//3.通过全局mixin方法添加一些组件选项,eg: vuex
Vue.mixin({
created: function() {}
})
//4.添加实例方法,通过把他们添加Vue.prototype上实现
Vue.prototype.$myMethod = function(options) {}
}
}
三.插件使用
npm下载插件后,在main.js中注册插件
...
import Vue from 'vue'
import Myplugin from './plugins/plugins.js'
Vue.use(Myplugin)
四.插件发布
发布命令
npm login
npm publish