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()
相关推荐
贾公子4 分钟前
AI 内容检测 API 接入实战——异步任务、幂等键与轮询的正确写法
vue.js
inksci19 分钟前
发布Ai生成的html markdown 推荐
前端·javascript·html
在西安放羊的牛油果23 分钟前
WebP 图片优化方案详解
运维·前端·架构
coding漫漫长路24 分钟前
签名PDF一压就失效,接压缩需求前先查这5件事
前端
Lank_M25 分钟前
PDF签完名还能改什么?会签能过,压缩不行
前端
补码缩写29 分钟前
压缩前查PDF签名,字节搜索会漏掉对象流
前端
星光不问赶路人29 分钟前
Vue 项目类型检查:深入理解 vue-tsc --build
前端·vue.js
修炼的dance31 分钟前
压完的PDF验签不报错,是因为签名被删了
前端
ModStart33 分钟前
想玩 AI 翻唱?SeedVC 模型 + AIGCPanel 上手
前端