diff --git a/admin/src/layout/default/components/aside/menu-item.vue b/admin/src/layout/default/components/aside/menu-item.vue index 4e3b2881d..ff388a53a 100644 --- a/admin/src/layout/default/components/aside/menu-item.vue +++ b/admin/src/layout/default/components/aside/menu-item.vue @@ -84,6 +84,9 @@ routers.forEach(item => { if (item.meta.addon) { addonRouters[item.meta.addon] = item } + if (item.meta.attr) { + addonRouters[item.meta.attr] = item + } }) const addonsMenus = ref(null) @@ -93,6 +96,8 @@ watch(route, () => { if (systemAddonKeys.value.includes(route.meta.addon) && addonRouters[route.meta.addon]) { addonsMenus.value = addonRouters[route.meta.addon] + } else if (route.meta.attr && addonRouters[route.meta.attr]) { + addonsMenus.value = addonRouters[route.meta.attr] } else { addonsMenus.value = null } diff --git a/admin/src/layout/default/components/aside/side.vue b/admin/src/layout/default/components/aside/side.vue index 1392788eb..34ef7f5d7 100644 --- a/admin/src/layout/default/components/aside/side.vue +++ b/admin/src/layout/default/components/aside/side.vue @@ -48,10 +48,12 @@ getWebConfig().then(({ data }) => { routers.forEach(item => { item.original_name = item.name if (item.meta.addon == '') { - if (item.children && item.children.length) { - item.name = findFirstValidRoute(item.children) + if (item.meta.attr == '') { + if (item.children && item.children.length) { + item.name = findFirstValidRoute(item.children) + } + menuData.value.push(item) } - menuData.value.push(item) } else if (item.meta.addon != '' && systemStore?.apps.length == 1 && systemStore?.apps[0].key == item.meta.addon) { if (item.children) { item.children.forEach((citem: Record) => {