Mitt 是一个第三方消息发布/订阅JavaScript库,可以使用它在组件之间发送,监听消息。
安装导入
使用时,首先安装依赖包:npm install mitt
然后新建Eventbus.ts文件,之后就可以在组件中导入使用了。

使用
发送消息:

接收消息:

在这里接收的时候发现,消息在发送之后,没办法接收到,使用全局的接收倒是可以接收到,但是单独接收这个不可以。
let srith;
EventBus.on('*',(index,data) => {
if(srith !== index){
srith = index;
console.log(data)
}else{
return
}
})
在网上搜了之后发现,这是因为现在的emitter.on是写在 onMounted生命周期里面,但是emitter.emit却是写在了setup里面,先发送了消息,才加的监听,那自然监听不到。
解决方案
把emitter.on也放在setup里面,先监听,再发送消息,就可以监听到了。
2905

被折叠的 条评论
为什么被折叠?



