mixins: 混合對象, 功能類似于Vue.extend();
使用時,在組件的選項中添加mixins: [mixin]
var mixin = {
methods: {
foo: function () {
console.log('foo')
},
conflicting: function () {
console.log('from mixin')
}
}
}
var vm = new Vue({
mixins: [mixin],
methods: {
bar: function () {
console.log('bar')
},
conflicting: function () {
console.log('from self')
}
}
})
vm.foo() // => "foo"
vm.bar() // => "bar"
vm.conflicting() // => "from self"
注意事項:
1-minxins可以包含任意組件對象的選項(例如:methods, mounted等鉤子函數, components, directives等等),
2-當組件使用minxins對象時, minxins對象的選項, 將被混合進組件的選項
3-如果minxins對象的選項是鉤子函數(created, mounted等)怎會先于組件的鉤子函數執(zhí)行
4-如果minxins對象的選項為對象(如methods, directives,components), 則會合并為同意對象, 如果鍵值發(fā)生沖突, 則會使用組件的鍵值對