混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。
通俗一点来说就是将需要需要复用的属性和方法进行封装 方便其他组件进行使用。
1、例子
使用:
在src下创建一个文件夹这个文件夹用来存放混入封装的复用内容
// 定义一个混入对象
let myMixins = {
// 原来vue中怎么写属性或者方法 那么在这个对象中就怎么
created: function () {
this.hello()
},
methods: {
hello: function () {
console.log('hello from mixin!')
}
}
}
export default myMixins
全局混入
引用调用之后在任意位置直接使用
1.在main.js中引用调用
import myMixin from "./mixins/index.js"
// 全局混入
Vue.mixin(myMixin)
2.在随意的组件中 可以直接使用混入封装的内容
局部混入
引用的复用内容只能在当前组件使用
1.先把混入内容引用进来
2.调用: 在data methods watch 等属性的同级
使用mixins:[就是你在上面引用的内容]
3.就可以正常使用 mixins中封装的内容
<template>
<div>
zia
<!-- 3.直接使用混入的内容 -->
<button @click="fun()">点我弹出弹出框</button>
</div>
</template>
<script>
// 1.引用
import myMixins from "../../mixins/index.js"
export default {
// 2.使用mixins调用我们引用的内容
mixins:[myMixins]
}
</script>
<style>
</style>