vue 销毁eventBus


eventBus 适用于不同页面传递值,当然也可以用vuex, 本篇讲解的是如何使用吃,并销毁eventBus

我在A页面中发布

1 mounted(){
2         eventBus.$on("clickLeft",(id)=>{
3             this.groupId = id;
4             this.getTableData()
5         })
6     },

在B页面中触发

1 clickItems(id){
2             this.activeId = id;
3             eventBus.$emit("clickLeft",id)
4         }

然而,传值是实现了, 但是当我刷新页面或者N次点击此菜单时,会发现A页面的接口被触发了N+1次,这是因为 $on事件是不会自动清楚销毁的,需要我们手动来销毁

所以。我在A组件页面中添加Bus.$off来关闭。代码如下:

beforeDestroy () {
        eventBus.$off('clickLeft')
    },

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM