1、Vue混入的了解
混入是一种代码的组织形式,可以在多个组件间横向的复用代码。
定义混入对象,只要将混入对象添加到组件中,那么该组件就可以获取到存储在混入对象中的任何东西
2、混入mixin的基本使用
混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。
并且每一个Vue选项对象当中都有一个mixins选项,mixins选项后面不要加引号使用,加引号里面就是字符串了,当作变量放进去就好。
3、混入对象与组件的选项合并
如果混入对象和组件间有重复的选项,如果重名的方法或者都有一同一个生命周期的钩子函数,根据他们的类型,Vue会区别对待。
3.1 数据对象合并
数据对象在内部进行递归合并,并在发送冲突时以组件数据优先。
3.2 钩子函数
同名钩子函数合并为一个数组,因此都将被调用,另外,混入对象的钩子将在组件自身钩子之前调用!
很显然,混入对象的钩子函数会先执行!
3.3 方法以及计算属性等合并
值为对象的选项,例如 methods、components和directives,将被合并为同一个对象,两个对象键名冲突时,取组件对象的键值对。
简单的来说:就跟data中的数据一样,重名的就用组件的覆盖混入对象的,组件的优先级更高!
当组件创建时,只有组件中的方法执行了, 因为组件中的方法把混入方法覆盖了