vue3使用mitt用于组件之间传值

vue3已经没有提供配套的事件总线bus,需要使用第三方库mitt 来完成vue2中bus完成的事情

1.安装

javascript 复制代码
npm install mitt

2.引用 bus.js

javascript 复制代码
import mitt from 'mitt';
const bus  = mitt();
export default bus;

3.在需要使用的vue文件中导入bus

javascript 复制代码
import bus from './mitt'

4.使用mitt的emit方法进行传值和on方法进行接收数据

javascript 复制代码
// 父组件(兄弟组件)
bus.emit('函数名', 需要传的值)

//子组件(兄弟组件)
bus.on('函数名',(接收到的值)=>{
	逻辑操作
})
//接收值的vue 组件卸载之前关闭掉
onBeforeUnmount(()=>{
	bus.off('函数名');//关闭
})

//清除bus线
emitter.all.clear()
相关推荐
拖孩13 小时前
用 AI 重解千年观音灵签,做了一个微信小程序,每天摇一摇,命运给你回应
前端·后端·微信小程序
難釋懷13 小时前
Nginx日志
前端·网络·nginx
倾听醉梦语13 小时前
React/Vite/Next.js 前端开发工具 SpotPatch:点击页面元素精准定位 JSX/TSX 源码
javascript·react·ai编程·vite·next.js·前端开发工具
Web极客码13 小时前
用 Python 搭建工具调用 Agent 的调试过程
java·服务器·前端
2401_8818283214 小时前
简易文本处理网页工具|AI 通识课第三次作业
前端·javascript·html
障碍的枫子14 小时前
Vue组件导出&渲染
前端·javascript·vue.js
开开心心就好14 小时前
视频播放器完美解码集成三款播放器切换使用
前端·人工智能·智能手机·电脑·音视频·virtualenv·pygame
Sterting14 小时前
组件通信:Props 与 Emit
前端·vue.js
东方老白14 小时前
iOS 面试题
前端
hunterandroid14 小时前
Compose LazyColumn 性能优化:从卡顿到流畅的大列表治理
前端