vue面试|vue中Mixin和extends详解

一、认识Mixin

目前我们使用组件化开发方式来开发应用程序,但是在不同组件之间存在一些相同的代码逻辑,此时我们希望对相同的代码逻辑 进行抽取。 在vue2和vue3中都支持使用Mixin来解决,Mixin提供了一种非常灵活的方式,来分发Vue组件中的可复用功能,一个Mixin对 象可以包含任何组件选项,当组件使用Mixin对象时,所有Mixin对象的选项将被 混合 进入该组件本身的选项中。

二、Mixin的基本使用
vue面试|vue中Mixin和extends详解
文章图片

如图所示,上述代码中设定了两个mixin,并且将其全部在App.vue选项中进行配置。
三、mixin的合并规则
一、如果是data中返回的对象的属性相同,则会以该组件的值为准。
二、如果为生命周期钩子函数,则都会被调用。
三、像methods,components和directive这些对象,将会合并成一个对象,如果在key不一样的情况下,都会执行,但是当key一样的时候,只会执行当前组件中的内容。
四、全局混入Mixin
【vue面试|vue中Mixin和extends详解】vue面试|vue中Mixin和extends详解
文章图片

五、extends
extends类似于mixin,相当于继承,但是只是继承options Api中的内容,不继承template模板。
vue面试|vue中Mixin和extends详解
文章图片

    推荐阅读