diff --git a/src/layout/components/Menu/index.vue b/src/layout/components/Menu/index.vue index 5969834..9b07fe5 100644 --- a/src/layout/components/Menu/index.vue +++ b/src/layout/components/Menu/index.vue @@ -99,13 +99,16 @@ () => currentRoute.fullPath, () => { updateMenu(); - const matched = currentRoute.matched; - state.openKeys = matched.map((item) => item.name); - const activeMenu: string = (currentRoute.meta?.activeMenu as string) || ''; - selectedKeys.value = activeMenu ? (activeMenu as string) : (currentRoute.name as string); } ); + function updateSelectedKeys() { + const matched = currentRoute.matched; + state.openKeys = matched.map((item) => item.name); + const activeMenu: string = (currentRoute.meta?.activeMenu as string) || ''; + selectedKeys.value = activeMenu ? (activeMenu as string) : (currentRoute.name as string); + } + function updateMenu() { if (!settingStore.menuSetting.mixMenu) { menus.value = generatorMenu(asyncRouteStore.getMenus); @@ -116,6 +119,7 @@ const activeMenu: string = currentRoute?.matched[0].meta?.activeMenu as string; headerMenuSelectKey.value = (activeMenu ? activeMenu : firstRouteName) || ''; } + updateSelectedKeys(); } // 点击菜单