兄弟组件传值,$emit方法无效的问题解决

在Vue.js项目开发中遇到兄弟组件间通信的问题,使用this.$emit方法出现偶尔生效的情况。尝试了命名调整、通过父组件传递、异步调用等方法未解决问题。最终,采用事件总线(Event Bus)成功解决了兄弟组件间的通信问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在项目的开发中,发现了一个问题,在兄弟组件通信的过程中发现 this.$emit 时而生效,时而又不生效,

网上查了好多文章,也试了各种方法,

1,命名不使用驼峰,使用-连接,比如: this.$emit(‘my-method’);

2,使用this.$parent.方法名调用

3,异步执行,在关闭弹框之前调用

以上方法都未能解决

最终解决方案,使用事件总线

事件总线

// eventBus.js
import Vue from 'vue'

export default new Vue
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值