在我的项目的 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…