我们项目需求大概是这样的,有一个好友列表,每点击进入和一个好友聊天时可以送礼物给对方,因为页面的其他地方也要用到送礼的功能,我就把送礼的模块单独抽取出来成一个组件,当选择了一个礼物送给对方时,礼物的数据暂时push到聊天记录的数组中展示出来,我就用了eventBus来实现送礼组件和聊天页面之间的数据传递。我们在礼物组件选择一个礼物时触发eventBus的 bus.$emit("listenGiftInfo","礼物数据对象")
,在聊天页面的的created里面监听bus.$on("listenGiftInfo",(礼物数据对象)=>{xxxxxxx})
,这时你退出和另外一个人聊天送礼物,bus.$on()
会累次触发,查了一遍资料,看了尤大大说的,在聊天页面销毁前吧bus关闭了bus.$off()
,附上尤大大的回答
vue中eventbus被多次触发
最新推荐文章于 2024-08-15 10:31:28 发布