切换公司的时候关闭所有页签

This commit is contained in:
xielue 2022-12-15 16:28:43 +08:00
parent 4212dbda9b
commit b89a685ffb
4 changed files with 15 additions and 3 deletions

View File

@ -1,4 +1,4 @@
VUE_APP_API_BASE_URL=http://192.168.31.166:46000
VUE_APP_USER_MODEL=AdminUser
VUE_APP_USER_MODEL2=BaseAdmin
VUE_APP_USER_MODEL2=AdminUser
VUE_APP_USER_MODEL=BaseAdmin

View File

@ -74,7 +74,8 @@ export default {
const routesConfig = result.data.data
this.setRoutesConfig(routesConfig)
loadRoutes([routesConfig])
this.$router.push(pushTo)
//this.$router.push(pushTo)
this.$closeOthers(pushTo)
this.$message.success(msg, 3)
}
})

View File

@ -224,6 +224,7 @@ export default {
* 添加监听器
*/
addListener() { //
window.addEventListener('page:closeOthers', this.closeOthersListener)
window.addEventListener('page:close', this.closePageListener) //
window.addEventListener('page:refresh', this.refreshPageListener) //
window.addEventListener('unload', this.unloadListener) //
@ -232,10 +233,16 @@ export default {
* 移出监听器
*/
removeListener() { //
window.removeEventListener('page:closeOthers', this.closeOthersListener)
window.removeEventListener('page:close', this.closePageListener) //
window.removeEventListener('page:refresh', this.refreshPageListener) //
window.removeEventListener('unload', this.unloadListener) //
},
closeOthersListener(event) {
this.closeOthers( event.detail) //
},
/**
* 页签关闭事件监听
* @param event 页签关闭事件

View File

@ -7,6 +7,10 @@ const TabsPagePlugin = { // 标签页插件
const event = new CustomEvent('page:close', {detail:{closeRoute, nextRoute}}) // 创建自定义事件
window.dispatchEvent(event) // 触发自定义事件
},
$closeOthers(path) { // 关闭页面
const event = new CustomEvent('page:closeOthers', {detail:path}) // 创建自定义事件
window.dispatchEvent(event) // 触发自定义事件
},
$refreshPage(route) { // 刷新页面
const path = typeof route === 'object' ? route.path : route // 获取路径
const event = new CustomEvent('page:refresh', {detail:{pageKey: path}}) // 创建自定义事件