var M = new Vue({
methods:{
Foo(...arg){
return arg.map(item=>item+1)
}
}
})
var A = new Vue({
mixins:[M]
//others
})
var B = new Vue({
mixins:[M]
//others
})
var C = new Vue({
mixins:[M]
//others
})
var D = new Vue({
methods:{
Foo(..arg){
return arg.map(item=>item+1).filter((item,index)=>index%2==0)
}
}
//others
})
假如A、B、C组件公用了某个方法(Foo),可以把Foo抽出来放到mixin(M)中用来复用代码。但是假如又有个D组件,D中实现的Foo方法与M中的Foo方法不完全一样。我除了像上面那样直接重写Foo外,能否引入M,在M的基础上“添”代码呢?(M中的Foo是个纯函数)
不知道说清楚了没有。