Vue3中使用mitt事件总线

在utils下封装mitt.js

import mitt from 'mitt'

export default mitt()

// mitt基本使用:https://juejin.cn/post/6973106775755063333

组件中引入mitt并使用

import mitt from '@/utils/mitt'

// A组件中 监听事件
mitt.on('echoDetailData', (data) => {
  associatedEchoData = data;
  tabFlagEchoControl(mainVisible, associatedEchoData);
  tabVisibleControl(associatedEchoData);
})

// B组件中 触发监听事件并传送数据
mitt.emit('echoDetailData', BData);

// 组件销毁时释放监听的事件

onBeforeUnmount(() => {
  mitt.all.delete('echoDetailData');
  mitt.all.delete('associatedEleKeys');
})
posted @ 2023-04-15 17:42  Felix_Openmind  阅读(442)  评论(0)    收藏  举报
*{cursor: url(https://files-cdn.cnblogs.com/files/morango/fish-cursor.ico),auto;}