no message
Former-commit-id: 0c19f83985ef8b25d0c30a7fb861808a6490c180
This commit is contained in:
@@ -3,6 +3,9 @@ import { remove, get } from 'lodash'
|
||||
// 设置文件
|
||||
import setting from '@/setting.js'
|
||||
|
||||
// 判定是否需要缓存
|
||||
const isKeepAlive = data => get(data, 'meta.cache', false)
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state: {
|
||||
@@ -87,7 +90,9 @@ export default {
|
||||
page.query = query || page.query
|
||||
state.opened.splice(index, 1, page)
|
||||
// 增加缓存设置
|
||||
commit('keepAlivePush', page.name)
|
||||
if (isKeepAlive(page)) {
|
||||
commit('keepAlivePush', page.name)
|
||||
}
|
||||
// 持久化
|
||||
await dispatch('opend2db')
|
||||
// end
|
||||
@@ -109,7 +114,7 @@ export default {
|
||||
// 添加进当前显示的页面数组
|
||||
state.opened.push(newTag)
|
||||
// 如果这个页面需要缓存 将其添加到缓存设置
|
||||
if (get(newTag, 'meta.cache', false)) {
|
||||
if (isKeepAlive(newTag)) {
|
||||
commit('keepAlivePush', tag.name)
|
||||
}
|
||||
// 持久化
|
||||
@@ -145,6 +150,7 @@ export default {
|
||||
} else {
|
||||
// 页面以前没有打开过
|
||||
let page = state.pool.find(t => t.name === name)
|
||||
// 如果这里没有找到 page 代表这个路由虽然在框架内 但是不参与标签页显示
|
||||
if (page) {
|
||||
await dispatch('add', {
|
||||
tag: page,
|
||||
@@ -334,14 +340,7 @@ export default {
|
||||
* @param {Object} state vuex state
|
||||
*/
|
||||
keepAliveRefresh (state) {
|
||||
state.keepAlive = state.opened.filter(item => {
|
||||
if (item.meta) {
|
||||
if (item.meta.notCache) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
return true
|
||||
}).map(e => e.name)
|
||||
state.keepAlive = state.opened.filter(item => isKeepAlive(item)).map(e => e.name)
|
||||
},
|
||||
/**
|
||||
* @description 删除一个页面的缓存设置
|
||||
|
||||
Reference in New Issue
Block a user