优化页面内嵌iframe切换tab不刷新数据
This commit is contained in:
		
							parent
							
								
									7347cbaedf
								
							
						
					
					
						commit
						9a895763d5
					
				| 
						 | 
					@ -19,6 +19,11 @@ public class Constants
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public static final String GBK = "GBK";
 | 
					    public static final String GBK = "GBK";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * www主域
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public static final String WWW = "www.";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * http请求
 | 
					     * http请求
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -529,7 +529,7 @@ public class SysMenuServiceImpl implements ISysMenuService
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public String innerLinkReplaceEach(String path)
 | 
					    public String innerLinkReplaceEach(String path)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        return StringUtils.replaceEach(path, new String[] { Constants.HTTP, Constants.HTTPS },
 | 
					        return StringUtils.replaceEach(path, new String[] { Constants.HTTP, Constants.HTTPS, Constants.WWW, "." },
 | 
				
			||||||
                new String[] { "", "" });
 | 
					                new String[] { "", "", "", "/" });
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,11 +6,12 @@ const state = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const mutations = {
 | 
					const mutations = {
 | 
				
			||||||
  ADD_IFRAME_VIEW: (state, view) => {
 | 
					  ADD_IFRAME_VIEW: (state, view) => {
 | 
				
			||||||
    if (state.iframeViews.some(v => v.path === view.path)) {
 | 
					    if (state.iframeViews.some(v => v.path === view.path)) return
 | 
				
			||||||
      return
 | 
					    state.iframeViews.push(
 | 
				
			||||||
    } else {
 | 
					      Object.assign({}, view, {
 | 
				
			||||||
      state.iframeViews.push(view)
 | 
					        title: view.meta.title || 'no-name'
 | 
				
			||||||
    }
 | 
					      })
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  ADD_VISITED_VIEW: (state, view) => {
 | 
					  ADD_VISITED_VIEW: (state, view) => {
 | 
				
			||||||
    if (state.visitedViews.some(v => v.path === view.path)) return
 | 
					    if (state.visitedViews.some(v => v.path === view.path)) return
 | 
				
			||||||
| 
						 | 
					@ -87,10 +88,12 @@ const mutations = {
 | 
				
			||||||
      if (i > -1) {
 | 
					      if (i > -1) {
 | 
				
			||||||
        state.cachedViews.splice(i, 1)
 | 
					        state.cachedViews.splice(i, 1)
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					      if(item.meta.link) {
 | 
				
			||||||
 | 
					        const fi = state.iframeViews.findIndex(v => v.path === item.path)
 | 
				
			||||||
 | 
					        state.iframeViews.splice(fi, 1)
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
      return false
 | 
					      return false
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
    const iframeIndex = state.iframeViews.findIndex(v => v.path === view.path)
 | 
					 | 
				
			||||||
    state.iframeViews = state.iframeViews.filter((item, idx) => idx <= iframeIndex)
 | 
					 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  DEL_LEFT_VIEWS: (state, view) => {
 | 
					  DEL_LEFT_VIEWS: (state, view) => {
 | 
				
			||||||
    const index = state.visitedViews.findIndex(v => v.path === view.path)
 | 
					    const index = state.visitedViews.findIndex(v => v.path === view.path)
 | 
				
			||||||
| 
						 | 
					@ -105,10 +108,12 @@ const mutations = {
 | 
				
			||||||
      if (i > -1) {
 | 
					      if (i > -1) {
 | 
				
			||||||
        state.cachedViews.splice(i, 1)
 | 
					        state.cachedViews.splice(i, 1)
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					      if(item.meta.link) {
 | 
				
			||||||
 | 
					        const fi = state.iframeViews.findIndex(v => v.path === item.path)
 | 
				
			||||||
 | 
					        state.iframeViews.splice(fi, 1)
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
      return false
 | 
					      return false
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
    const iframeIndex = state.iframeViews.findIndex(v => v.path === view.path)
 | 
					 | 
				
			||||||
    state.iframeViews = state.iframeViews.filter((item, idx) => idx >= iframeIndex)
 | 
					 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue