「Vue3学习篇」-mixins、extends

213 阅读1分钟

『引言』

在vue2.0中一些可复用的逻辑可以使用mixins来封装,但是需要考虑逻辑代码冲突问题。

vue3.0的组合API很好的解决了这个问题,就不再推荐使用mixins了。

尤雨溪也不推荐在vue3中使用混入,因为组合式API已经很好的解决了这个问题。

『mixins』

『定义』

官方解释

【我的理解】 将多个相同的逻辑抽离出来,每个组件只需引入mixins,就能实现一次写代码,多组件受益。

『用法』

  • 将代码中script部分代码抽出来,写入一个js文件中
  • 需要引入mixins的组件引入即可

官网示例🌰

『注意』

  • 组件的data、methods会覆盖mixins里的同名data、methods
  • mixins中的生命周期会与引入mixins的组件的生命周期整合在一起调用
  • 不同mixin里的同名方法,按照引进的顺序,最后的覆盖前面的同名方法

『extends』

『定义』

官方解释

【我的理解】 extends主要用于创建新组件,并继承另一个组件的所有选项。

『用法』

官网示例🌰

『注意』

不建议用于组合式 API

extends 是为选项式 API 设计的,不会处理 setup() 钩子的合并。

详细见官网