From dae38d9b181a85d24081efff42c059dde0efc8c9 Mon Sep 17 00:00:00 2001 From: pixelmaxQM Date: Sun, 9 Feb 2025 19:56:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E8=8F=9C=E5=8D=95=E5=A4=8D=E5=90=88?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E4=B8=8B=EF=BC=8C=E7=82=B9=E5=87=BB=E4=B8=80?= =?UTF-8?q?=E7=BA=A7=E8=8F=9C=E5=8D=95=E4=BC=9A=E8=87=AA=E5=8A=A8=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E9=A6=96=E4=BD=8D=E5=AD=90=E8=8F=9C=E5=8D=95=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E5=90=AB=E5=AD=90=E8=8F=9C=E5=8D=95=E5=88=99=E5=AE=9A?= =?UTF-8?q?=E4=BD=8D=E4=B8=BA=E9=A1=B6=E6=A0=8F=E6=9C=AC=E4=BD=93=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/pinia/modules/router.js | 8 +------- web/src/view/layout/aside/combinationMode.vue | 6 +++++- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/web/src/pinia/modules/router.js b/web/src/pinia/modules/router.js index 8afd8c3e..33ebbc9a 100644 --- a/web/src/pinia/modules/router.js +++ b/web/src/pinia/modules/router.js @@ -73,6 +73,7 @@ export const useRouterStore = defineStore('router', () => { const setLeftMenu = (name) => { sessionStorage.setItem('topActive', name) topActive.value = name + leftMenu.value = [] if (menuMap[name]?.children) { leftMenu.value = menuMap[name].children } @@ -81,19 +82,12 @@ export const useRouterStore = defineStore('router', () => { watchEffect(() => { let topActive = sessionStorage.getItem('topActive') - let firstHasChildren = '' asyncRouters.value[0]?.children.forEach((item) => { if (item.hidden) return menuMap[item.name] = item - if (!firstHasChildren && item.children && item.children.length > 0) { - firstHasChildren = item.name - } topMenu.value.push({ ...item, children: [] }) }) - if (!menuMap[topActive]?.children && firstHasChildren) { - topActive = firstHasChildren - } setLeftMenu(topActive) }) diff --git a/web/src/view/layout/aside/combinationMode.vue b/web/src/view/layout/aside/combinationMode.vue index 22c6c38d..e9f82ecc 100644 --- a/web/src/view/layout/aside/combinationMode.vue +++ b/web/src/view/layout/aside/combinationMode.vue @@ -129,9 +129,13 @@ router.push({ name: index, query, params }) return } - if (!routerStore.setLeftMenu(index)) { + const leftMenu = routerStore.setLeftMenu(index) + if (!leftMenu) { router.push({ name: index, query, params }) + return; } + const firstMenu = leftMenu.find((item) => !item.hidden && item.path.indexOf("http://") === -1 && item.path.indexOf("https://") === -1) + router.push({ name: firstMenu.name, query, params }) } }