组件是将视图、非视图的各种逻辑抽象成一个统一的组件来实现开发的模式,在Vue中每一个 .vue文件都可以当成一个组件
优势:
-
降低耦合度
-
调试方便
-
提高可维护性
插件通常是用来给Vue添加全局功能
-
添加全局方法或者 property。如:vue-custom-element
-
添加全局资源:指令/过滤器/过渡等。如 vue-touch
-
通过全局混入来添加一些组件选项。如 vue-router
-
添加 Vue 实例方法,通过把它们添加到 Vue.prototype 上实现。
扩展:
通过全局方法 Vue.use() 使用插件,在调用 new Vue() 之前完成。Vue.use会自动阻止多次注册相同的插件。
开发一个插件必须暴露一个 install 方法,方法的第一个参数是 Vue 构造器,第二个参数是可选配置项
编写形式:
-
组件:写一个组件可以有很大方式,常见的有vue单文件,每一个.vue都可以看成是一个组件
-
插件:插件必须暴露一个 install 方法,方法的第一个参数是 Vue 构造器,第二个参数是可选配置项
注册形式:
-
组件: 组件可以通过全局和局部注册,全局注册通过Vue.component方法,局部注册只需在用到的地方通过components属性注册
-
插件通过Vue.use注册,且需要在调用new Vue() 启动应用之前完成
使用场景:
组件是用来构成业务模块的 插件是用来增强功能模块的