vue3 不建议使用,可用组合式函数替代
mixin 是 vue2 组件 选项 的复用方式
规则:
- mixin会在前面执行
- 属性冲突时会被覆盖
- 同样的生命周期钩子会依次执行
全局 mixin
全局 mixin,它将影响每一个之后创建的组件
// vue3
app.mixin({···})
const app = Vue.createApp({
mixins: [myMixin] // myMixin is configObj
})
// vue2
Vue.mixin({ ··· })
new Vue({
···
})
mixins 选项
传入 组件选项对象 的数组
自定义选项合并策略
app.config.optionMergeStrategies
中添加一个函数(函数名为选项名)
接收mixin选项和组件选项上定义的值,分别作为第一个和第二个参数
正常mixin被覆盖 return second || first
可以修改为mixin优先应用 return first || second