From fea87f6e7faac0cd4b856d258946cd6e02049a5f Mon Sep 17 00:00:00 2001 From: liyang <1711467488@qq.com> Date: Mon, 10 Sep 2018 16:53:53 +0800 Subject: [PATCH] keepAlive Former-commit-id: 4e2c99a5eb914796080ee784db3c7805741e529a [formerly 4e2c99a5eb914796080ee784db3c7805741e529a [formerly 4e2c99a5eb914796080ee784db3c7805741e529a [formerly 4e2c99a5eb914796080ee784db3c7805741e529a [formerly 0673d79b0c2bf8f305834ec81cbf966776452d8c [formerly e086649eb11bbf0161279601fedc27f61306cf6c]]]]] Former-commit-id: bc0fbc7b16fbb174c50b1ebac650112de349017d Former-commit-id: 525a8205e35fc7e21666fc9c902be67356a0a901 Former-commit-id: e84543902a51d1d26008d67ff8de0e1848ee3af3 [formerly 5af200b4d0c4a75ae10ead931e9767e66e2742fb] Former-commit-id: 5d4c68bf8fced815af9808cc63500272ecdfb214 Former-commit-id: af97711a8a7dfead7ea572bbc0a6169ef79a2ce3 Former-commit-id: e0feb7ebcfbf746a859c25435f087ec7dc9d5f85 Former-commit-id: 43cb13c42677b7d08f8971990716593ec37dba96 Former-commit-id: b06a25b1d92afe7faffc795122d99d6ce7d563f4 --- src/layout/header-aside/layout.vue | 2 +- src/store/modules/d2admin/modules/page.js | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/layout/header-aside/layout.vue b/src/layout/header-aside/layout.vue index bc93c903..b90f977a 100644 --- a/src/layout/header-aside/layout.vue +++ b/src/layout/header-aside/layout.vue @@ -108,12 +108,12 @@ export default { }, computed: { ...mapState('d2admin', { + keepAlive: state => state.page.keepAlive, grayActive: state => state.gray.active, transitionActive: state => state.transition.active, asideCollapse: state => state.menu.asideCollapse }), ...mapGetters('d2admin', { - keepAlive: 'page/keepAlive', themeActiveSetting: 'theme/activeSetting' }), /** diff --git a/src/store/modules/d2admin/modules/page.js b/src/store/modules/d2admin/modules/page.js index 8d88d517..c2f51013 100644 --- a/src/store/modules/d2admin/modules/page.js +++ b/src/store/modules/d2admin/modules/page.js @@ -9,15 +9,18 @@ export default { // 当前显示的多页面列表 opened: setting.page.opened, // 当前页面 - current: '' + current: '', + // 需要缓存的页面 name + keepAlive: [] }, - getters: { + mutations: { /** - * @description 从当前所有打开的多标签页里返回需要缓存的页面 name - * @param {*} state vuex state + * @class keepAlive + * @description 从已经打开的页面记录中更新需要缓存的页面记录 + * @param {Object} state vuex state */ - keepAlive (state) { - return state.opened.filter(item => { + updateKeepAliveFromOpened (state) { + state.keepAlive = state.opened.filter(item => { if (item.meta) { if (item.meta.notCache) { return false @@ -25,9 +28,7 @@ export default { } return true }).map(e => e.name) - } - }, - mutations: { + }, /** * @class current * @description 打开一个新的页面