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