-
optionMergeStrategies: 合并策略
接受一个属性<Function> 第一个参数是父实例,第二个为子实例,第三个为Vue的上下文
比如我们设置 methods 的自定义合并策略
//mixin.js
module.exports = { //这个有时候不好用
export default { //建议用这个
methods:{
....代码
}
}
//main.js
import mixin from './mixin.js'
export default {
data:()=>({
...
})
mixins:[mixin], //添加到mixin数组中
minxins:[import('./mixin.js')], //不建议使用,有时候引不进去
methods:{
....代码
}
}
//配置这么写
Vue.config.optionMergeStrategies.metholds = (parent,child,that)=>{
//第一个参数父 这里指的是 main.js 里面的Vue对象metholds
//第二个参数指的是 子 这里指的是 mixin.js的metholds
//指的是 当前的上下文 main.js
if (!parent) { //如果父中没有这个metholds属性,那么返回子的
return child
}
if (!child) { //如果子中没有设置metholds这个属性那么返回父的
return parent
}
//策略如果混入中和当前vue实例中都有一个同名方法,那么加了该策略后,只能使用子的
return Object.assign(parent,...child) //两个都有那么就合并后返回,子的会覆盖父的
}
需要要设置vue对象中的那个值 optionMergeStrategies后面就点什么(data,created,....)