From f3f0a8e395407b0ffe6ed146513082e89b935002 Mon Sep 17 00:00:00 2001 From: Fine Date: Tue, 11 Jul 2023 22:19:00 +0800 Subject: [PATCH] fix: remove activateMenus --- src/layout/components/SideBar.vue | 67 ++++++++++++++++--------------- src/store/modules/app.ts | 16 +------- src/views/marketplace/Menus.vue | 2 +- 3 files changed, 37 insertions(+), 48 deletions(-) diff --git a/src/layout/components/SideBar.vue b/src/layout/components/SideBar.vue index 99b080f3..69658e9e 100644 --- a/src/layout/components/SideBar.vue +++ b/src/layout/components/SideBar.vue @@ -29,39 +29,37 @@ limitations under the License. --> :style="{ border: 'none' }" > @@ -77,9 +75,12 @@ limitations under the License. --> /*global Recordable*/ const appStore = useAppStoreWithOut(); - const name = ref(String(useRouter().currentRoute.value.name)); + const router = useRouter(); + const name = ref(String(router.currentRoute.value.name)); const theme = ["VirtualMachine", "Kubernetes"].includes(name.value || "") ? ref("light") : ref("black"); - const routes = ref(useRouter().options.routes); + const routes = ref( + (router.options.routes || []).filter((d: any) => d.meta && d.meta.activate), + ); const route = useRoute(); const isCollapse = ref(true); const showMenu = ref(true); diff --git a/src/store/modules/app.ts b/src/store/modules/app.ts index b4ab404d..3dac4191 100644 --- a/src/store/modules/app.ts +++ b/src/store/modules/app.ts @@ -36,7 +36,6 @@ interface AppState { version: string; isMobile: boolean; reloadTimer: Nullable; - activateMenus: MenuOptions[]; allMenus: MenuOptions[]; } @@ -58,7 +57,6 @@ export const appStore = defineStore({ version: "", isMobile: false, reloadTimer: null, - activateMenus: [], allMenus: [], }), getters: { @@ -165,8 +163,8 @@ export const appStore = defineStore({ }, async getActivateMenus() { const resp = (await this.queryMenuItems()) || {}; - this.allMenus = resp.getMenuItems || []; - const menus = this.allMenus.map((d: MenuOptions, index: number) => { + + this.allMenus = (resp.getMenuItems || []).map((d: MenuOptions, index: number) => { const t = `${d.title.replace(/\s+/g, "-")}`; d.name = `${t}-${index}`; d.path = `/${t}`; @@ -182,16 +180,6 @@ export const appStore = defineStore({ return d; }); - this.activateMenus = menus.filter((d: MenuOptions) => { - if (d.activate) { - d.subItems = d.subItems.filter((item: SubItem) => { - if (item.activate) { - return item; - } - }); - return d; - } - }); }, async queryOAPTimeInfo() { const res: AxiosResponse = await graphql.query("queryOAPTimeInfo").params({}); diff --git a/src/views/marketplace/Menus.vue b/src/views/marketplace/Menus.vue index c109ce06..27114a4d 100644 --- a/src/views/marketplace/Menus.vue +++ b/src/views/marketplace/Menus.vue @@ -56,7 +56,7 @@ limitations under the License. --> const { t } = useI18n(); const appStore = useAppStoreWithOut(); - const currentItems = ref(appStore.activateMenus[0] || {}); + const currentItems = ref(appStore.allMenus[0] || {}); function handleItems(item: MenuOptions) { currentItems.value = item;