fix: 修复chartTabs组件由其他界面进入时还保留上次状态
This commit is contained in:
@@ -230,6 +230,26 @@ export default {
|
|||||||
},
|
},
|
||||||
beforeUnmount () {
|
beforeUnmount () {
|
||||||
clearTimeout(this.timer)
|
clearTimeout(this.timer)
|
||||||
|
const path = this.$router.currentRoute.value.path
|
||||||
|
const list = window.currentChartTabList
|
||||||
|
if (list && this.router !== 'noRouter') {
|
||||||
|
if (list[1]) {
|
||||||
|
// 去其他界面,清除状态
|
||||||
|
if (path !== list[0].path && path !== list[1].path) {
|
||||||
|
window.currentChartTabList = null
|
||||||
|
} else if (path === this.tabsData[0].path) {
|
||||||
|
// 场景为在本界面点击tabs,通过遮罩菜单栏又进入该界面,则初始化状态,默认选中第一个
|
||||||
|
// 缺点:点击第一个tabs时没有过渡效果,后续会跟进解决
|
||||||
|
window.currentChartTabList = [
|
||||||
|
{ path: list[1].path, index: list[1].index },
|
||||||
|
{ path: this.tabsData[0].path, index: '0' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
} else if (path !== list[0].path) {
|
||||||
|
// 避免刷新页面之后又点击菜单栏进入该界面,还保留上次点击状态
|
||||||
|
window.currentChartTabList = null
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user