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