项目越来越大,你可能会发现在相似的组件里一遍又一遍的在复制粘贴相同的代码段(data,method,watcher等)。当然,你也可以把这些独立文件(指相似的组件)写成一个组件,然后用props来定制它,但是使用太多的props很容易导致混乱。为了避免这个问题,大多数人仅仅还是继续选择添加重复的代码,尽管感觉有更好的解决方案。
庆幸的是,VueJS赐予了我们Mixins —— 一种能在不同组件里重用相同代码的方式
export default {
//通用的方法可以通过mixin引入到每个组件里面
methods: {
goBack(){
history.back()
},
goPath(name) {
this.$router.push({
name: name
});
},
showMessage(msg, type = 'error') {
this.$notify({
message: msg,
type: type
})
}
}
Vue.mixin(mixin)