vue2【详解】mixins —— 抽离公共逻辑

mixins 用于在 Vue 中便捷复用变量、方法、组件引用、生命周期等

使用方法

  1. 创建文件myMixin.js
js 复制代码
export const myMixin = {
    data() {
        return {
            webName: '朝阳的博客'
        }
    },
    created() {
        alert(`欢迎来到${this.webName}`)
    },
    methods: {
        hi() {
            alert(`欢迎来到${this.webName}`)
        }
    }
}
  1. vue文件中引入并使用myMixin.js
js 复制代码
import {myMixin} from './myMixin.js'
js 复制代码
export default {
    mixins: [myMixin],

mixins的值为一个数组,可以传入多个minxins

js 复制代码
 mixins: [myMixin1,myMixin2],

注意事项

  • mixins中的变量和方法与vue文件中的变量和方法同名时,vue文件中的变量和方法会覆盖mixins中的
  • mixins中函数(如生命周期钩子函数)会在vue中的函数之前执行
    • 如mixins和vue中都有mounted生命周期钩子函数,则mixins中的先执行,vue文件中的后执行。
  • 不同vue文件引入同一个mixins时,mixins中定义的变量都属于各自的vue实例,相互之间互不影响。
  • 全局混入会影响每个单独创建的 Vue 实例 ,包括第三方组件,所以使用时格外小心。

mixins 的缺点

  • 变量来源不明确,不利于阅读
  • 多 mixin 可能会造成命名冲突
  • mixin 和组件可能出现多对多的关系,复杂度较高
相关推荐
程序软件分享7 小时前
多语言DAPP综合盘交易所系统源码搭建剖析
vue.js·金融·开源
路光.12 小时前
Vue2升级Vue3处理原 UMD/CommonJS 打包文件,不是标准 ESM
前端·javascript·vue.js·vue3
shmily麻瓜小菜鸡16 小时前
前端“伪防盗链”方案
前端·javascript·vue.js·bootstrap·echarts
MrDJun17 小时前
分享一款免费实用的网页变动监控工具:PageWatch.tech
前端·javascript·vue.js
浅水壁虎1 天前
vue基础(第二章 )
前端·javascript·vue.js
腻害兔1 天前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:CRM 客户关系模块深度解析——从线索到回款,一套完整的 B2B 销售闭环是怎么搭的?
java·前端·javascript·vue.js·产品经理·ai编程
m0_547486662 天前
《Vue.js + uni-app全栈开发从入门到实践 》全套PPT课件2026版
vue.js·uni-app
达子6662 天前
第10章_HarmonyOs开发图解 用JS开发UI
vue.js
奶糖 肥晨2 天前
想return数据 返回的确是函数问题处理
vue.js
无巧不成书02182 天前
Vue+Vue-CLI全平台零基础搭建教程
前端·javascript·vue.js·vue·前端开发·vue-cli·前端环境搭建