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()
相关推荐
光影少年几秒前
vite+rust生态链工具链
开发语言·前端·后端·rust·前端框架
skywalk81631 分钟前
当前有什么流行的lisp的web框架吗?
开发语言·前端·lisp
IT_陈寒7 分钟前
为什么我的JavaScript变量老是不听使唤?
前端·人工智能·后端
HookJames10 分钟前
设计Section 06 · Component Sourcing & BOM Risk Control
前端
zhenxin012210 分钟前
HTML头部元信息避坑指南
前端·html
布局呆星22 分钟前
Vite代理解决前端跨域问题 | fetch请求 | 环境变量
前端
sghuter30 分钟前
HTML头部元信息避坑指南
c语言·前端·html·cocoa
无心使然云中漫步32 分钟前
Openlayers调用ArcGis地图服务之三 —— 要素查询(/query)
前端·arcgis·vue·数据可视化
薛定谔的猫19821 小时前
gradio学习代码部分
java·前端·javascript
yqcoder1 小时前
React 深度解析:类组件 (Class) vs 函数组件 (Function)
前端·javascript·react.js