Vue3 中没有了 EventBus 跨组件通信,但是现在有了一个替代的方案 mitt.js,原理还是 EventBus
vue3兄弟传值只需安装一个小插件
npm i mitt -S
在src文件夹中建一个 mitt.js文件 文件中写入以下内容
// 先安装 npm i mitt -S
// 然后像以前封装 bus 一样, 封装一下
import mitts from 'mitt'
const mitt = mitts()
export default mitt
兄弟组件a
import mitt from "../mitt";// 引入busimport { onUnmounted } from "vue"; const goAdd = (e) => { console.log("我是兄弟b传过来的数据", e);};("goAdd", goAdd); // 第一个参数是事件的名字,第二个是函数onUnmounted(() => { // 销毁的时候给他解绑mitt.off("goAdd", goAdd);});
兄弟组件b
<template><button @click="btn">我是兄弟组件b</button></template>import mitt from "../mitt";function btn() {it("goAdd", '我发给另一个组件'); // 第一个 事件的名字 第二个是要穿的参数}return{btn}
本文发布于:2024-02-03 04:21:23,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170690528448616.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |