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()
相关推荐
Kagerou12 分钟前
vue3基础知识(结合TypeScript)
前端
市民中心的蟋蟀18 分钟前
第五章 使用Context和订阅来共享组件状态
前端·javascript·react.js
逆袭的小黄鸭22 分钟前
JavaScript 闭包:强大特性背后的概念、应用与内存考量
前端·javascript·面试
carterwu33 分钟前
各个大厂是怎么实现组件库和相应扩展的?基础组件、区块、页面
前端
Face34 分钟前
promise 规范应用
前端
Mintopia35 分钟前
Node.js 中 fs.readFile API 的使用详解
前端·javascript·node.js
Face36 分钟前
事件循环
前端·javascript
ONE_Gua38 分钟前
chromium魔改——navigator.webdriver 检测
前端·后端·爬虫
CodePencil38 分钟前
CSS专题之盒模型
前端·css
谦谦橘子38 分钟前
服务端渲染原理解析
前端·javascript·react.js