安装
npm install --save mitt
引入项目
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
对于单页面应用
参考最高点赞回答:https://stackoverflow.com/questions/63471824/vue-js-3-event-bus
对于多页面应用
- 找到页面入口的vue文件,添加:
import mitt from 'mitt';
const emitter = mitt();- 给需要用到emitter的子组件用props传递传递emitter。如此,所有调用过emitter的组件均可使用。当然最好单独拉一个js出去,所有组件需要用时去调用那个js中的emitter,而不是写在vue中
- 对于事件的监控
// attention: only one parameter allowed
emitter.on('customEventName', param => {
// do something
});- 对于事件的触发
emitter.emit('customEventName', param);