Vue的mixin混入

本文介绍了Vue.js中如何使用mixin混入来封装和复用组件的配置项,包括方法和数据。通过创建混入对象并在组件中局部或全局引入,实现了代码的复用和组织。同时,注意到了混入的执行顺序和优先级问题,组件自身的属性和方法会覆盖混入的同名属性。
摘要由CSDN通过智能技术生成

mixin混入可以将组件公共的配置项提取出来,封装成一个混入对象

  1. 封装混入对象

    // 新建一个mixins.js文件
    export const hunru1 = {
    	methods: {
    		show() {
    			console.log('123');
    		}
    	},
    	mounted() {
    		console.log('挂载完成');
    	}
    }
    export const hunru2 = {
    	data() {
    		return {
    			x: 100,
    			y: 200
    		}
    	}
    }
    
  2. 使用混入

    ① 局部混入

    <template>
    	<div>
    		<button @click="show">点我调用混入中的show函数</button>
    		<p>{{name}}---{{x}}---{{y}}</p>
    	</div>
    </template>
    <script>
    	import { hunru1, hunru2} from '@/mixins.js'
    	export default {
    		data() {
    			return {
    				name: 'wuwu'
    			}
    		},
    		mixins: [hunru1, hunru2]
    	}
    </script>
    

    ② 全局混入
    【在main.js中全局混入之后,所有的组件都拥有混入的配置项】

    import Vue from 'vue';
    import { hunru1, hunru2 } from '@/mixins.js'
    Vue.mixin(hunru1);
    Vue.mixin(hunru2);
    
  3. 注意事项
    ① 组件自身的data、methods…优先级比混入过来的高
    ② 组件自身的生命周期钩子和混入过来的不冲突,两者都会被执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值