问题:keepAlive缓存页面,组件在其他界面重复使用问题。
解决方法:使用v-if在生命周期beforeRouterLeave销毁组件即可,在重新回到缓存界面时v-if设置为true
组件:
<area-select ref="areaSelect" v-if="isShow"/>
销毁:
beforeRouterEnter(to, from, next) {
next((vm) => {
vm.isShow = true;
});
},
beforeRouterLeave(to, from, next) {
this.isShow = false;
next();
},