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组件复用的资料请关注脚本之家其它相关文章!

相关文章

  • 详解windows下vue-cli及webpack 构建网站(四) 路由vue-router的使用

    详解windows下vue-cli及webpack 构建网站(四) 路由vue-router的使用

    本篇文章主要介绍了windows下vue-cli及webpack 构建网站(四) 路由vue-router的使用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Vue+abp微信扫码登录的实现代码示例

    Vue+abp微信扫码登录的实现代码示例

    这篇文章主要介绍了Vue+abp微信扫码登录的实现代码示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • VUE el-table列表搜索功能纯前端实现方法

    VUE el-table列表搜索功能纯前端实现方法

    Vue表搜索是指在Vue应用中实现对表格数据的搜索功能,下面这篇文章主要给大家介绍了关于VUE el-table列表搜索功能纯前端实现的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-09-09
  • vue3使用el-upload上传文件示例详解

    vue3使用el-upload上传文件示例详解

    这篇文章主要为大家介绍了vue3使用el-upload上传文件实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Vue 简介及基本使用教程

    Vue 简介及基本使用教程

    ​ Vue.js就是一套轻量级的 MVVM 框架,本文通过实例代码给大家介绍Vue 简介及基本使用教程,感兴趣的朋友跟随小编一起看看吧
    2025-10-10
  • vue实现codemirror代码编辑器中的SQL代码格式化功能

    vue实现codemirror代码编辑器中的SQL代码格式化功能

    这篇文章主要介绍了vue实现codemirror代码编辑器中的SQL代码格式化功能,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • 完美解决vue 中多个echarts图表自适应的问题

    完美解决vue 中多个echarts图表自适应的问题

    这篇文章主要介绍了完美解决vue 中多个echarts图表自适应的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • Vue项目生产环境性能优化的实战技巧

    Vue项目生产环境性能优化的实战技巧

    本文总结了Vue项目生产环境性能优化的实战技巧,这些优化能显著提升Vue应用的速度、稳定性和资源效率,文章通过代码示例介绍的非常详细,需要的朋友可以参考下
    2025-08-08
  • vue3+element-plus Dialog对话框的使用与setup 写法的用法

    vue3+element-plus Dialog对话框的使用与setup 写法的用法

    这篇文章主要介绍了vue3+element-plus Dialog对话框的使用 与 setup 写法的使用,本文通过两种方式结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Axios在vue项目中的封装步骤

    Axios在vue项目中的封装步骤

    Axios 是一个基于 promise 的网络请求库,可以用于浏览器和 node.js,是一个第三方插件,第三方异步请求工具库,这篇文章主要介绍了Axios在vue项目中的封装方法,需要的朋友可以参考下
    2022-10-10

最新评论