vue3组件通信方式之全局事件总线(组件之间的通信)

全局事件总线是一种用于组件间通信的模式,这种方式特别适用于那些没有父子关系的组件间的通信。

首先,引入mitt插件

import mitt from 'mitt';

const $bus =mitt();

//对外暴露

export default $bus;

其次,在需要通信的两个组件之间,分别引入$bus对象,使用 emit 来触发事件,使用 on 来监听事件。

需要进行监听事件的组件,当然要引入组合式API函数

//他的作用是组件挂载完毕后,绑定一个事件,接受将来组件之间传递的数据

import {onMounted} from 'vue';

onMounted(()=>{

//第一个参数为事件类型,第二个参数为事件的回调

$bus.on('car',(car)=>{

console.log(car);

)}

}

需要进行触发事件的组件,

(可以绑定按钮)

$bus.emit('car',{car:"法拉利"})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值