fix[TagsView]: fixed CachedView bug (PanJiaChen#406)
							parent
							
								
									594fc58d0c
								
							
						
					
					
						commit
						89ac6f4b4a
					
				| 
						 | 
					@ -13,9 +13,13 @@ const mutations = {
 | 
				
			||||||
    )
 | 
					    )
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  ADD_CACHED_VIEW: (state, view) => {
 | 
					  ADD_CACHED_VIEW: (state, view) => {
 | 
				
			||||||
    if (state.cachedViews.includes(view.name)) return
 | 
					 | 
				
			||||||
    if (!view.meta.noCache) {
 | 
					    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)
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,8 +32,9 @@ const mutations = {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  DEL_CACHED_VIEW: (state, view) => {
 | 
					  DEL_CACHED_VIEW: (state, view) => {
 | 
				
			||||||
    const index = state.cachedViews.indexOf(view.name)
 | 
					    const deletedViewName = view.matched[view.matched.length - 1].components.default.name
 | 
				
			||||||
    index > -1 && state.cachedViews.splice(index, 1)
 | 
					    const index = state.cachedViews.indexOf(deletedViewName)
 | 
				
			||||||
 | 
					    state.cachedViews.splice(index, 1)
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  DEL_OTHERS_VISITED_VIEWS: (state, view) => {
 | 
					  DEL_OTHERS_VISITED_VIEWS: (state, view) => {
 | 
				
			||||||
| 
						 | 
					@ -38,9 +43,10 @@ const mutations = {
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  DEL_OTHERS_CACHED_VIEWS: (state, view) => {
 | 
					  DEL_OTHERS_CACHED_VIEWS: (state, view) => {
 | 
				
			||||||
    const index = state.cachedViews.indexOf(view.name)
 | 
					    const currentViewName = view.matched[view.matched.length - 1].components.default.name
 | 
				
			||||||
 | 
					    const index = state.cachedViews.indexOf(currentViewName)
 | 
				
			||||||
    if (index > -1) {
 | 
					    if (index > -1) {
 | 
				
			||||||
      state.cachedViews = state.cachedViews.slice(index, index + 1)
 | 
					      state.cachedViews = view.matched.map(i => i.components.default.name)
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      // if index = -1, there is no cached tags
 | 
					      // if index = -1, there is no cached tags
 | 
				
			||||||
      state.cachedViews = []
 | 
					      state.cachedViews = []
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue