From b3a55ea44df6a3ba1ae0d1b17a56f97765faa285 Mon Sep 17 00:00:00 2001 From: ssongliu <73214554+ssongliu@users.noreply.github.com> Date: Wed, 6 Aug 2025 22:00:31 +0800 Subject: [PATCH] fix: Fix menu display exception issue (#9883) --- frontend/src/routers/index.ts | 2 ++ frontend/src/routers/modules/container.ts | 8 ++------ frontend/src/routers/modules/cronjob.ts | 3 +-- frontend/src/routers/modules/database.ts | 8 ++------ frontend/src/routers/modules/setting.ts | 1 + frontend/src/routers/modules/toolbox.ts | 3 +-- frontend/src/routers/modules/website.ts | 3 +-- frontend/src/utils/router.ts | 5 ++++- 8 files changed, 14 insertions(+), 19 deletions(-) diff --git a/frontend/src/routers/index.ts b/frontend/src/routers/index.ts index 93ead96ae..365551266 100644 --- a/frontend/src/routers/index.ts +++ b/frontend/src/routers/index.ts @@ -73,6 +73,8 @@ router.afterEach((to) => { localStorage.setItem('cachedRoute' + to.meta.activeMenu, '/cronjobs/cronjob'); } else if (to.meta.activeMenu === '/containers' && to.path === '/containers/container/operate') { localStorage.setItem('cachedRoute' + to.meta.activeMenu, '/containers/container'); + } else if (to.meta.activeMenu === '/toolbox' && to.path === '/toolbox/clam/setting') { + localStorage.setItem('cachedRoute' + to.meta.activeMenu, '/toolbox/clam'); } else { localStorage.setItem('cachedRoute' + to.meta.activeMenu, to.path); } diff --git a/frontend/src/routers/modules/container.ts b/frontend/src/routers/modules/container.ts index 87fa7a308..b4f290f51 100644 --- a/frontend/src/routers/modules/container.ts +++ b/frontend/src/routers/modules/container.ts @@ -53,9 +53,7 @@ const containerRouter = { meta: { activeMenu: '/containers', requiresAuth: false, - parent: 'menu.container', - title: 'menu.container', - detail: 'commons.table.operate', + ignoreTab: true, }, }, { @@ -67,9 +65,7 @@ const containerRouter = { meta: { activeMenu: '/containers', requiresAuth: false, - parent: 'menu.container', - title: 'container.compose', - detail: 'commons.button.view', + ignoreTab: true, }, }, { diff --git a/frontend/src/routers/modules/cronjob.ts b/frontend/src/routers/modules/cronjob.ts index 8113cf670..8c7ecdd74 100644 --- a/frontend/src/routers/modules/cronjob.ts +++ b/frontend/src/routers/modules/cronjob.ts @@ -37,8 +37,7 @@ const cronRouter = { meta: { activeMenu: '/cronjobs', requiresAuth: false, - title: 'menu.cronjob', - detail: 'commons.table.operate', + ignoreTab: true, }, }, { diff --git a/frontend/src/routers/modules/database.ts b/frontend/src/routers/modules/database.ts index 9f80b7db9..85e91cd6c 100644 --- a/frontend/src/routers/modules/database.ts +++ b/frontend/src/routers/modules/database.ts @@ -39,9 +39,7 @@ const databaseRouter = { meta: { activeMenu: '/databases', requiresAuth: false, - parent: 'menu.database', - title: 'MySQL', - detail: 'commons.button.set', + ignoreTab: true, }, }, { @@ -91,9 +89,7 @@ const databaseRouter = { meta: { activeMenu: '/databases', requiresAuth: false, - parent: 'menu.database', - title: 'PostgreSQL', - detail: 'commons.button.set', + ignoreTab: true, }, }, { diff --git a/frontend/src/routers/modules/setting.ts b/frontend/src/routers/modules/setting.ts index c6ecd8a03..b2c5cf1b1 100644 --- a/frontend/src/routers/modules/setting.ts +++ b/frontend/src/routers/modules/setting.ts @@ -110,6 +110,7 @@ const settingRouter = { meta: { requiresAuth: true, activeMenu: 'Expired', + ignoreTab: true, }, }, ], diff --git a/frontend/src/routers/modules/toolbox.ts b/frontend/src/routers/modules/toolbox.ts index 2242968a4..de151b8ba 100644 --- a/frontend/src/routers/modules/toolbox.ts +++ b/frontend/src/routers/modules/toolbox.ts @@ -60,8 +60,7 @@ const toolboxRouter = { component: () => import('@/views/toolbox/clam/setting/index.vue'), hidden: true, meta: { - parent: 'menu.toolbox', - title: 'toolbox.device.toolbox', + ignoreTab: true, activeMenu: '/toolbox', requiresAuth: false, }, diff --git a/frontend/src/routers/modules/website.ts b/frontend/src/routers/modules/website.ts index cc084a902..c280ca916 100644 --- a/frontend/src/routers/modules/website.ts +++ b/frontend/src/routers/modules/website.ts @@ -27,10 +27,9 @@ const webSiteRouter = { hidden: true, props: true, meta: { - parent: 'menu.website', - title: 'menu.config', activeMenu: '/websites', requiresAuth: false, + ignoreTab: true, }, }, { diff --git a/frontend/src/utils/router.ts b/frontend/src/utils/router.ts index d4bc30303..70339b543 100644 --- a/frontend/src/utils/router.ts +++ b/frontend/src/utils/router.ts @@ -33,8 +33,11 @@ export const routerToNameWithParams = async (name: string, params: any) => { const tabStoreMiddleWare = () => { try { - const tabsStore = TabsStore(); let route = router.currentRoute; + if (route.value.meta.ignoreTab) { + return; + } + const tabsStore = TabsStore(); tabsStore.addTab(route.value); tabsStore.activeTabPath = route.value?.path; } catch (error) {}