Vue mixin实现组件功能复用示例详解

 更新时间:2023年10月26日 10:15:09   作者:张旭超  
这篇文章主要为大家介绍了Vue mixin实现组件功能复用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

Vue mixin

Vue中的mixin,是来分发Vue组件中的可复用功能。

1、方法和数据在各个组件中不共享

不像vuex那样,一个地方修改其他地方也会修改,mixin的数据的作用域就是被引入的组件内部。

2、引用组件中的钩子函数在混入对象中的钩子函数后面执行。

3、引用组件中的同名方法会覆盖混入对象中的方法,不同名的会合并。

案例分析

HelloWorld.vue

<template>
  <div class="hello">
    <div v-for="(item, index) in mixinData" :key="index">
      姓名:{{item.name}}, 年龄:{{item.age}}
    </div>
  </div>
</template>
<script>
import CommonMethods from '../mixin/CommonMethods.vue'
export default {
  name: 'HelloWorld',
  mixins: [CommonMethods],
  data () {
    return {
      msg: 'Welcome to Your Vue.js App'
    }
  },
  mounted () {
    // 1、引用组件中的钩子函数在混入对象中的钩子函数后面执行。
    this.mixinData = [
      { name: '初始化数据', age: 10 }
    ]
    // 2、引用组件中的同名方法会覆盖混入对象中的方法,不同名的会合并。
    this.mixinGetData()
  },
  methods: {
    mixinGetData () {
      this.mixinData = []
      return []
    }
  }
}
</script>

CommonMethods.vue

<script>
export default {
  name: 'mixinMethods',
  data () {
    return {
      mixinData: []
    }
  },
  mounted () {
    this.mixinData = [
      { name: '初始化数据', age: 0 }
    ]
  },
  methods: {
    mixinGetData () {
      let data = [
        { name: 'zxc', age: 32 },
        { name: 'lvy', age: 27 }
      ]
      this.mixinData = data
      return data
    }
  }
}
</script>

以上就是Vue mixin实现组件功能复用的详细内容,更多关于Vue mixin组件复用的资料请关注脚本之家其它相关文章!

相关文章

  • vue中v-for加载本地静态图片方法

    vue中v-for加载本地静态图片方法

    下面小编就为大家分享一篇vue中v-for加载本地静态图片方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue项目刷新当前页面的三种方式(重载当前页面数据)

    vue项目刷新当前页面的三种方式(重载当前页面数据)

    这篇文章主要介绍了vue项目刷新当前页面的三种方式(重载当前页面数据),本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-01-01
  • Element plus实现图片手动上传与回显的过程

    Element plus实现图片手动上传与回显的过程

    近期,发现点击修改,element ui 的图片没有回显到框中,所以本文给大家介绍了Element plus实现图片手动上传与回显的过程,文中通过代码示例给大家介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2024-09-09
  • 如何处理 Vue3 中隐藏元素刷新闪烁问题

    如何处理 Vue3 中隐藏元素刷新闪烁问题

    本文主要探讨了网页刷新时,原本隐藏的元素会一闪而过的问题,以及尝试过的解决方案并未奏效,通过实例代码介绍了如何处理 Vue3 中隐藏元素刷新闪烁问题,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • vue更改数组中的值实例代码详解

    vue更改数组中的值实例代码详解

    这篇文章主要介绍了vue更改数组中的值,本文通过两个例子,给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Vue 数组和对象更新,但是页面没有刷新的解决方式

    Vue 数组和对象更新,但是页面没有刷新的解决方式

    今天小编就为大家分享一篇Vue 数组和对象更新,但是页面没有刷新的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • vue+antv实现雷达图的示例代码

    vue+antv实现雷达图的示例代码

    这篇文章主要介绍了vue+antv实现雷达图,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • Vue中常用的鼠标移入移出事件详解

    Vue中常用的鼠标移入移出事件详解

    这篇文章主要给大家介绍了关于Vue中常用的鼠标移入移出事件的相关资料,鼠标移入移出事件在 Vue 中可以通过@mouseenter和@mouseleave来绑定,需要的朋友可以参考下
    2023-07-07
  • vue+express生成token方式

    vue+express生成token方式

    这篇文章主要介绍了vue+express生成token方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • vue watch监听触发优化搜索框的性能防抖节流的比较

    vue watch监听触发优化搜索框的性能防抖节流的比较

    这篇文章主要为大家介绍了vue watch监听触发优化搜索框的性能防抖节流的比较,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10

最新评论