一、背景介绍
由于eventBus的$on方法在创建后即使关闭该页面也不会自动销毁,所以会出现在a页面创建之后,b页面点击也触发a页面的方法。在两个页面使用同一个EventBus,会同时触发
this.$EventBus.$on("menuId", (id) => {
this.handleOpen(id);
});
二、解决思路
在关闭页面或者切换路由触发beforeDestroy时,销毁掉该$on方法以免被其他页面误触
beforeDestroy() {
this.$EventBus.$off('menuId')
},