diff --git a/.env.development b/.env.development index 48a5bc1..62310f2 100644 --- a/.env.development +++ b/.env.development @@ -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 \ No newline at end of file +VUE_APP_USER_MODEL2=AdminUser +VUE_APP_USER_MODEL=BaseAdmin \ No newline at end of file diff --git a/src/components/login/loginActions.vue b/src/components/login/loginActions.vue index bda47f0..07e0eeb 100644 --- a/src/components/login/loginActions.vue +++ b/src/components/login/loginActions.vue @@ -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) } }) diff --git a/src/layouts/tabs/TabsView.vue b/src/layouts/tabs/TabsView.vue index 06e664b..0ab89c0 100644 --- a/src/layouts/tabs/TabsView.vue +++ b/src/layouts/tabs/TabsView.vue @@ -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 页签关闭事件 diff --git a/src/plugins/tabs-page-plugin.js b/src/plugins/tabs-page-plugin.js index 5e07bdb..90f8ece 100644 --- a/src/plugins/tabs-page-plugin.js +++ b/src/plugins/tabs-page-plugin.js @@ -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}}) // 创建自定义事件