diff --git a/src/layouts/modules/global-tab/index.vue b/src/layouts/modules/global-tab/index.vue index ea851081..91a54100 100644 --- a/src/layouts/modules/global-tab/index.vue +++ b/src/layouts/modules/global-tab/index.vue @@ -73,7 +73,8 @@ function getContextMenuDisabledKeys(tabId: string) { const disabledKeys: App.Global.DropdownKey[] = []; if (tabStore.isTabRetain(tabId)) { - disabledKeys.push('closeCurrent'); + const homeDisable: App.Global.DropdownKey[] = ['closeCurrent', 'closeLeft']; + disabledKeys.push(...homeDisable); } return disabledKeys; diff --git a/src/store/modules/tab/index.ts b/src/store/modules/tab/index.ts index 6beb22af..b00df19f 100644 --- a/src/store/modules/tab/index.ts +++ b/src/store/modules/tab/index.ts @@ -192,6 +192,12 @@ export const useTabStore = defineStore(SetupStoreId.Tab, () => { * @param tabId */ async function clearRightTabs(tabId: string) { + const isHomeTab = tabId === homeTab.value?.id; + if (isHomeTab) { + clearTabs(); + return; + } + const tabIds = tabs.value.map(tab => tab.id); const index = tabIds.indexOf(tabId); if (index === -1) return;