From 58d7e50de3432a4772ec0749661ec1f51c9c6086 Mon Sep 17 00:00:00 2001 From: NickLuo <69481226@qq.com> Date: Wed, 13 Dec 2023 00:55:46 +0000 Subject: [PATCH] =?UTF-8?q?!63=20=E5=85=B3=E9=97=AD=E5=8A=A8=E6=80=81?= =?UTF-8?q?=E8=B7=AF=E7=94=B1tab=E9=A1=B5=E7=AD=BE=E6=97=B6=E4=B8=8D?= =?UTF-8?q?=E6=B8=85=E7=90=86=E7=BB=84=E4=BB=B6=E7=BC=93=E5=AD=98=20*=20?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E8=B7=AF=E7=94=B1=E9=A1=B5=E9=9D=A2=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E6=97=B6=E4=B8=8D=E6=B8=85=E7=90=86=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E7=BC=93=E5=AD=98=EF=BC=8C=E9=81=BF=E5=85=8D=E6=B8=85=E7=90=86?= =?UTF-8?q?=E5=B7=B2=E6=89=93=E5=BC=80=E7=9A=84=E5=A4=9A=E4=B8=AA=E8=B7=AF?= =?UTF-8?q?=E7=94=B1=E9=A1=B5=E9=9D=A2=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/modules/tagsView.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/store/modules/tagsView.ts b/src/store/modules/tagsView.ts index cd065d1..1c1c9a2 100644 --- a/src/store/modules/tagsView.ts +++ b/src/store/modules/tagsView.ts @@ -1,4 +1,4 @@ -import { TagView } from 'vue-router'; +import { TagView, RouteRecordNormalized } from 'vue-router'; export const useTagsViewStore = defineStore('tagsView', () => { const visitedViews = ref([]); @@ -35,7 +35,9 @@ export const useTagsViewStore = defineStore('tagsView', () => { const delView = (view: TagView): Promise<{ visitedViews: TagView[]; cachedViews: string[] }> => { return new Promise((resolve) => { delVisitedView(view); - delCachedView(view); + if (!isDynamicRoute(view)) { + delCachedView(view); + } resolve({ visitedViews: [...visitedViews.value], cachedViews: [...cachedViews.value] @@ -177,6 +179,11 @@ export const useTagsViewStore = defineStore('tagsView', () => { } }; + const isDynamicRoute = (view: any): boolean => { + // 检查匹配的路由记录中是否有动态段 + return view.matched.some((m: RouteRecordNormalized) => m.path.includes(':')); + }; + return { visitedViews, cachedViews,