学习vue其实就是熟练后根据文档开发。
// 创建一个需要混入的对象 export const mixinTest1 = { created() { this.start(); }, methods: { start() { console.log('mixins'); }, handlePlaylist() { throw new Error('component must implement handlePlaylist method') } } };
import {mixinTest1} from './common/js/mixin'; export default { mixins:[mixinTest1], name: 'hello', data () { return { msg: 'Welcome to Your Vue.js App' } } }
以上是一个例子。
如果要说mixins类比什么,我觉得像jquery里的$.extends()方法,就是先对组件对象的空对象先let obj = $.extends({},mixinTest1)后$.extends(obj,组件对象)。
有是像这个,其实就是mixins是基础类,组件都是它子类,这样关系,所以mixins可以被组件覆盖。
这个mixins是个不错的想法,可以提高开发效率,和可维护性。
vue组件的公共方法都可以在里面实现,这样就可以变动一处,变动所有变动的地方。