diff --git a/src/store/modules/tagsView.js b/src/store/modules/tagsView.js index 57e72421e6b..2ae8b2a91fb 100644 --- a/src/store/modules/tagsView.js +++ b/src/store/modules/tagsView.js @@ -15,20 +15,25 @@ const mutations = { ADD_CACHED_VIEW: (state, view) => { if (state.cachedViews.includes(view.name)) return if (!view.meta.noCache) { - state.cachedViews.push(view.name) + for (const matchedView of view.matched) { + const { name } = matchedView.components.default + if (name && state.cachedViews.indexOf(name) === -1) { + state.cachedViews.push(name) + } + } } }, DEL_VISITED_VIEW: (state, view) => { for (const [i, v] of state.visitedViews.entries()) { - if (v.path === view.path) { + if (v.path === view.matched[view.matched.length - 1].name) { state.visitedViews.splice(i, 1) break } } }, DEL_CACHED_VIEW: (state, view) => { - const index = state.cachedViews.indexOf(view.name) + const index = state.cachedViews.indexOf(view.matched[view.matched.length - 1].name) index > -1 && state.cachedViews.splice(index, 1) },