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()
相关推荐
智码看视界15 小时前
Web Storage 的无障碍实践与工程化应用
前端·javascript·web
孟陬15 小时前
国外技术周刊 #140:在 Jeff Bezos 的私密 Campfire 峰会上,我学到了关于亿万富翁的事
前端·后端
槑有老呆15 小时前
Bun:一个让 Node 开发者原地起飞的 JS/TS 运行时
前端
小小小小宇15 小时前
AI Agent 核心流程与底层逻辑
前端
wuhen_n15 小时前
RAG 实战:语义检索 + 大模型生成精准问答
前端·langchain·ai编程
卤蛋fg615 小时前
vxe-table 列拖拽排序与行拖拽排序:让表格布局任意排序
vue.js
沉尘58815 小时前
ACE-GCM加解密微信小程序
前端
半个烧饼不加肉15 小时前
JS 底层探究-- 普通函数和构造函数
开发语言·javascript·原型模式
春风得意之时16 小时前
前端安装项目出现代理问题和ssl认证问题
前端·网络协议·ssl