Vue中mixin与组件之间的注意点

mixin就是方法变量抽离的合集,引用在组件内,相当于组件的拓展,和组件内其他方法变量一样使用。
1、生命周期
mixin中生命周期钩子会和组件中的生命周期钩子进行合并,而不是覆盖,合并后业务代码,
mixin的业务代码在组件业务代码之前,也就会出现,先执行mixin中生命周期里的逻辑,
在执行组件中的。
// mixin
created() {
	console.log('mixin created');
}
// 组件中
created() {
	console.log('mixin component');
}
// 合并后
created() {
	console.log('mixin created');
	console.log('mixin created');
}
2、相同方法,属性
mixin和组件中存在相同方法时,组件的方法的优先级大于mixin中。
也就是,mixin中方法会被组件中的方法覆盖掉,不执行。属性与方法一致。
3、同一个mixin被多个组件调用
多个组件调用同一个mixin,每个变量都是单独独立的,不会项目影响污染。
3、注意
1、组件和mixin中相同方法覆盖,只有不在生命周期中调用才能实现,
也就是,如果在mixin和组件的生命周期分别调用相同方法,是要执行2次,
且mixin方法优先执行。但是通过其他方法调用或者button按钮调用是执行
组件中的方法。
2、不建议全局引入mixin。
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值