乐趣区

关于前端:Vue特性学习混入和插件

在我的项目的 main.js 文件中,有可能会呈现

Vue.mixin(customizedMixin);…
new Vue(…);
这里的 Vue.mixin()办法是将引入的 customizedMixin 文件(次要是 customizedMixin 文件中的全局办法、生命周期钩子中的非凡解决、以及其余属性如 data、watch 等等)挂载到全局。

当全局引入的 customizedMixin 中有局部函数、同名变量的定义在子组件中也同时存在,那么子组件的办法、同名变量会笼罩全局引入的 customizedMixin。
举例如下:
// customizedMixin.js
data() {return { a: 3}}

// Child.vue
<script>
data() {return { a: 666}}

mounted() {
console.log(this.a); // 666
}
</script>

如果有局部通用的性能不须要全局混入,也能够在组件内通过与 components、data、computed 同级的 mixins 属性引入。用法如下。
// ChildA.vue
components: {},
mixins: [commonFuncMixin, windowSizeMixin],
data() {},
computed: {}

在我的项目的 main.js 文件中,大概率能看到
Vue.use()

下面的 VideoPlayer 咱们称它为插件(Plugin)

插件实质上是一个函数。它承受 Vue 实例作为第一个参数,也承受第二个可选参数。
形如 function(Vue, options) {}

个别状况下,咱们用对象的模式提供插件。并通过 Vue.use()办法应用

Vue.use() 办法调用了插件里的 install()办法实现了全局混入。

同步更新到本人的语雀,格局难看点。
https://www.yuque.com/diracke…

退出移动版