一、问题描述
vue组件复用时
http://xxx.com/some/path?appId=?
当只有路径后的query参数appId变化时,这个打开多个应用时由于组件复用页面显示的内容是最后一次加载的内容。
二、解决方法
增加监听方法刷新初始化内容
watch: {
'$route': function (to, from) {
// do flush content
}
}
组件复用时mounted和 destroyed方法执行
mounted() {
// 多个组件复用时,只有`第一次打开组件`加载一次
},
表现为
destroyed() {
// 销毁停止任务,所有相同组件的最后一个组件关闭后`执行一次`销毁
}
参考
vue刷新当前路由:router-view 复用组件时不刷新的3种解决方案总结
https://www.cnblogs.com/goloving/p/9005130.html