fix: pin tab not working correct (#23)
parent
a60467b01c
commit
4dbd13d48d
|
@ -143,6 +143,7 @@ const useCoreTabbarStore = defineStore('core-tabbar', {
|
|||
currentTab.params = params || currentTab.params;
|
||||
currentTab.query = query || currentTab.query;
|
||||
currentTab.fullPath = fullPath || currentTab.fullPath;
|
||||
currentTab.meta = meta || currentTab.meta;
|
||||
this.tabs.splice(tabIndex, 1, currentTab);
|
||||
}
|
||||
this.updateCacheTab();
|
||||
|
@ -285,7 +286,13 @@ const useCoreTabbarStore = defineStore('core-tabbar', {
|
|||
this.tabs[index].meta.affixTab = true;
|
||||
}
|
||||
// TODO: 这里应该把tab从tbs中移除
|
||||
this.affixTabs.push(tab as unknown as RouteRecordNormalized);
|
||||
const affixIndex = this.affixTabs.findIndex(
|
||||
(item) => this.getTabPath(item) === this.getTabPath(tab),
|
||||
);
|
||||
if (affixIndex === -1) {
|
||||
tab.meta.affixTab = true;
|
||||
this.affixTabs.push(tab as unknown as RouteRecordNormalized);
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 刷新标签页
|
||||
|
@ -324,6 +331,7 @@ const useCoreTabbarStore = defineStore('core-tabbar', {
|
|||
);
|
||||
|
||||
if (index !== -1) {
|
||||
tab.meta.affixTab = false;
|
||||
this.affixTabs[index].meta.affixTab = false;
|
||||
this.affixTabs.splice(index, 1);
|
||||
this.addTab(tab);
|
||||
|
|
Loading…
Reference in New Issue