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()
相关推荐
无糖可可果2 分钟前
React 性能优化利器:深入理解 `useCallback`、`useMemo` 与 `React.memo`
前端
今日无bug5 分钟前
JS 同步与异步:从单线程到 Promise
javascript·promise
Yoram6 分钟前
JavaScript 错误处理的一种整理与实践
前端
你听得到119 分钟前
排查 App 问题:别只盯着报错,把前后发生的事情串起来
android·前端·flutter
lllsure22 分钟前
Vue&React Router
前端·vue.js·react.js
weixin_4316004422 分钟前
为什么 Agent REPL 要上 Ink:好处、用法与内部设计
前端·学习·ai·agent·ai编程
IT_陈寒37 分钟前
Java 8的stream让我debug了一整天,气笑了
前端·人工智能·后端
sugar__salt41 分钟前
深入理解 React useContext:跨层级组件通信的核心利器
前端·javascript·react.js·前端框架·框架
小黑技术栈1 小时前
web前端基础到入门——14day
前端·数据库·oracle
谷哥的小弟1 小时前
TypeScript类型断言
前端·javascript·typescript