同步更新完整版
Former-commit-id: 9db14cdffadfbc1c96163d7c1e8ad4c368e9925c
This commit is contained in:
@@ -12,7 +12,7 @@ export default {
|
||||
pool: [],
|
||||
// 当前显示的多页面列表
|
||||
opened: setting.page.opened,
|
||||
// 标记已经加载多标签页数据 https://github.com/d2-projects/d2-admin/issues/201
|
||||
// 已经加载多标签页数据 https://github.com/d2-projects/d2-admin/issues/201
|
||||
openedLoaded: false,
|
||||
// 当前页面
|
||||
current: '',
|
||||
@@ -20,6 +20,19 @@ export default {
|
||||
keepAlive: []
|
||||
},
|
||||
actions: {
|
||||
/**
|
||||
* @description 确认已经加载多标签页数据 https://github.com/d2-projects/d2-admin/issues/201
|
||||
*/
|
||||
isLoaded ({ state }) {
|
||||
if (state.value) return Promise.resolve()
|
||||
return new Promise(resolve => {
|
||||
const timer = setInterval(() => {
|
||||
if (state.openedLoaded) {
|
||||
resolve(clearInterval(timer))
|
||||
}
|
||||
}, 10)
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @class opened
|
||||
* @description 从持久化数据载入标签页列表
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import Vue from 'vue'
|
||||
import router from '@/router'
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state: {
|
||||
@@ -5,6 +8,30 @@ export default {
|
||||
value: '' // medium small mini
|
||||
},
|
||||
actions: {
|
||||
/**
|
||||
* @description 将当前的设置应用到 element
|
||||
* @param {Boolean} refresh 是否在设置之后刷新页面
|
||||
*/
|
||||
apply ({ state, commit }, refresh) {
|
||||
Vue.prototype.$ELEMENT.size = state.value
|
||||
if (refresh) {
|
||||
commit('d2admin/page/keepAliveClean', null, { root: true })
|
||||
router.replace('/refresh')
|
||||
}
|
||||
},
|
||||
/**
|
||||
* @description 确认已经加载组件尺寸设置 https://github.com/d2-projects/d2-admin/issues/198
|
||||
*/
|
||||
isLoaded ({ state }) {
|
||||
if (state.value) return Promise.resolve()
|
||||
return new Promise(resolve => {
|
||||
const timer = setInterval(() => {
|
||||
if (state.value) {
|
||||
resolve(clearInterval(timer))
|
||||
}
|
||||
}, 10)
|
||||
})
|
||||
},
|
||||
/**
|
||||
* @description 设置尺寸
|
||||
* @param {Object} state vuex state
|
||||
@@ -14,6 +41,8 @@ export default {
|
||||
return new Promise(async resolve => {
|
||||
// store 赋值
|
||||
state.value = size
|
||||
// 应用
|
||||
dispatch('apply', true)
|
||||
// 持久化
|
||||
await dispatch('d2admin/db/set', {
|
||||
dbName: 'sys',
|
||||
@@ -38,6 +67,8 @@ export default {
|
||||
defaultValue: 'default',
|
||||
user: true
|
||||
}, { root: true })
|
||||
// 应用
|
||||
dispatch('apply')
|
||||
// end
|
||||
resolve()
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user