Vue高级特性之mixin混入

混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能,项目中经常使用mixin 抽离公共逻辑。

mixin 支持全局混入和局部混入两种方式,全局混入需谨慎使用,因为它会影响每个单独创建的 Vue 实例 (包括第三方组件)!

1. 全局混入

Vue.mixin({
  created: function () {
    console.log("全局混入")
  }
})

2. 局部混入

import mixin1 from './mixin1'
export default {
  mixins:[mixin1]
}

注意:当组件存在与 mixin 对象相同的选项的时候,进行递归合并的时候组件的选项会覆盖 mixin的选项;但是如果相同的选项为生命周期钩子的时候,会合并成一个数组,先执行 mixin 的钩子,再执行组件的钩子。

3. 示例代码

控制元素是否显示,都会使用v-show,如果两个组件中使用的变量和规则都相同,就可以把控制元素显示单独封装成一个mixin.js文件。

# mixin1.js中
export default {
  data() {
    return {
        isShowing: true
    }
  },
  methods: {
    show() { 
        this.isShowing = !this.isShowing
    }
  }
}
# modal.vue中
<template>
  <div id="app">
    <button @click="show()">modal显示与隐藏</button>
    <div v-show="isShowing">modal显示</div>
  </div>
</template>

<script>
import mixin1 from './mixin1'
export default {
  mixins: [mixin1]
}
</script>
# tooltip中
<template>
  <div id="app">
    <button @click="show()">tooltip显示与隐藏</button>
    <div v-show="isShowing">tooltip显示</div>
  </div>
</template>

<script>
import mixin1 from './mixin1'

export default {
  mixins: [mixin1]
}
</script>

End----------------------

S7-300西门子PLC例程源码50例合集S7-300-400路由功能例程; S7-300 MPI 通讯程序.rar S7-300-400路由功能例程.zip S7-300400时钟读写例程及教程.zip s7-300A2690-04.rar S7-300C 与MM440 串行口通讯.rar s7-300PID称序.rar S7-300PLC在押出机上的应用例子.zip S7-300_CPU之间的PROFIBUS主从通讯配置.rar S7-300_S7-400时钟读写例程.zip s7-300_step 7中的时间_日期_定时器.rar S7-300_STEP 7中的时间_日期读写例程.zip S7-300与其他设备通信.rar s7-300之pid.rar S7-300例程,斗轮机.rar S7-300做的PID程式.rar S7-300加药及数据采集实例(1).rar S7-300加药及数据采集实例.rar S7-300在电厂风机上的应用.rar s7-300工业过程控制程序案例.rar S7-300控制奔驰发动机程序.rar S7-300控制的挤出机之PLC程序.rar S7-300控制的挤出机之PLC程序1.rar S7-300控制频率程序简单处理模拟量输出的程序.rar S7-300步进炉的例子程序.rar S7-300步进炉的例子程序(钢厂程序).rar S7-300液压伺服程序例子.zip s7-300的时间日期处理问题.zip s7-300的网络,自己做的有程序.rar s7-300经典应用实例.rar s7-300编程控制变频器(多段速控制)程序.rar s7-300编程控制变频器(多段速控制),.rar S7-300西门子PLC例程源码50例合集.zip S7-300触摸屏变频器现场总线综合应用实例.rar S7-300计数、频率测量和脉冲宽度调制.rar s7-300运输带控制程序.rar S7-300饮料加工生产流水线线程序.rar s7-300饮料灌装线示例项目.rar S7-400H 典型配置选型示例.rar S7-400程序例(pdf文档).rar S7-400编程实战案例(1).rar S7-400编程实战案例.rar S7-400编程实战案例,覆盖了多cpu通讯,pid调节,各种自定义功能块的开发等(1).rar S7-400编程实战案例,覆盖了多cpu通讯,pid调节,各种自定义功能块的开发等.rar S7300 MODBUS通讯例程(1).rar S7300 MODBUS通讯例程.rar s7300400通过以太网和PROFIBUS_DP通讯的硬件组态.rar s7300_400工程项目实例.rar S7300与wincc由普通网卡通讯实例.rar S7300与WINCC的功能与例子.rar S7300之间MPI的通讯.rar S7300之间通过SFC67_68实现MPI通讯.rar s7300发动机控制.rar S7300软冗余实例及说明.zip S7400H与S7300通过DP Y-LINK通讯例子.rar
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值