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()
相关推荐
汉堡大王95277 分钟前
# AI 终于能"干活"了——Function Calling 完全指南
javascript·人工智能·机器学习
明君879978 分钟前
说说我为什么放弃使用 GetX,转而使用 flutter_bloc + GetIt
前端·flutter
Jingyou10 分钟前
用 Astro 搭建个人博客:从零到上线的完整实践
前端
吴声子夜歌15 分钟前
JavaScript——call()、apply()和bind()
开发语言·前端·javascript
小哈猪16 分钟前
CSS Flex 与 Grid:谁才是布局之王?
javascript
高桥凉介发量惊人20 分钟前
质量与交付篇(2/6):CI/CD 实战——自动构建、签名、分发
前端
leafyyuki21 分钟前
SSE 同域长连接排队问题解析与前端最佳实践
前端·javascript·人工智能
高桥凉介发量惊人22 分钟前
质量与交付篇(3/6):崩溃分析与线上问题回溯机制
前端
angerdream23 分钟前
最新版vue3+TypeScript开发入门到实战教程之路由详解三
前端·javascript·vue.js
好雨知时节t24 分钟前
sleep 函数在React项目中的运用
javascript