Former-commit-id: 016185852e1b512e544e2b8e0fe17105acadfc5a [formerly 016185852e1b512e544e2b8e0fe17105acadfc5a [formerly 016185852e1b512e544e2b8e0fe17105acadfc5a [formerly 016185852e1b512e544e2b8e0fe17105acadfc5a [formerly d4f506d1081f7073019db760921eb46132c3b0ef [formerly 8739959da40c0bb125b6d54e8eebd40bdbb289e0]]]]]
Former-commit-id: dd1ebd76877a12270738d07f4ad1b2a740738424
Former-commit-id: 31f092bdb4429c2821231385fe49544992b39c53
Former-commit-id: edaee9c02fa155ae126d72da323a5e4976db9b0a [formerly 7e407f62941d07994d32ef351c43b14ac8b8bea6]
Former-commit-id: b2348abfddfd93fe005b5cf2c98e8a2d7d807edd
Former-commit-id: 7c838eacbffac28bc9e4ed2898e7527d843cf0d1
Former-commit-id: f417c10eb84acbe70bcb7e34c2a569720a3c9f0c
Former-commit-id: f7aa3d5f2e78ca5cef82c82ffef1f62f9126d3f0
Former-commit-id: 010b19eafb2042f6247522f7f1b3bbcb044eb311
This commit is contained in:
liyang
2018-09-14 10:06:46 +08:00
parent e5fe71d955
commit b08fe0fc37
4 changed files with 40 additions and 30 deletions

View File

@@ -21,7 +21,7 @@
</template>
<script>
import { mapState, mapMutations } from 'vuex'
import { mapState, mapMutations, mapActions } from 'vuex'
export default {
name: 'd2-header-size',
computed: {
@@ -38,7 +38,7 @@ export default {
// 设置 element 全局尺寸
this.$ELEMENT.size = val
// 清空缓存设置
this.pageKeepAliveClean()
this.keepAliveClean()
// 刷新此页面
const { path, query } = this.$route
this.$router.replace({
@@ -50,12 +50,14 @@ export default {
}
},
methods: {
...mapMutations({
sizeSet: 'd2admin/size/set',
pageKeepAliveClean: 'd2admin/page/keepAliveClean'
}),
...mapMutations('d2admin/page', [
'keepAliveClean'
]),
...mapActions('d2admin/size', [
'set'
]),
handleChange (value) {
this.sizeSet(value)
this.set(value)
},
iconName (name) {
return name === this.value ? 'dot-circle-o' : 'circle-o'

View File

@@ -1,6 +1,6 @@
<template>
<d2-container type="card">
<el-radio-group v-model="currentValue" @change="sizeSet">
<el-radio-group v-model="currentValue" @change="set">
<el-radio-button label="default"></el-radio-button>
<el-radio-button label="medium"></el-radio-button>
<el-radio-button label="small"></el-radio-button>
@@ -10,7 +10,7 @@
</template>
<script>
import { mapState, mapMutations } from 'vuex'
import { mapState, mapActions } from 'vuex'
export default {
data () {
return {
@@ -31,9 +31,9 @@ export default {
}
},
methods: {
...mapMutations({
sizeSet: 'd2admin/size/set'
})
...mapActions('d2admin/size', [
'set'
])
}
}
</script>

View File

@@ -106,7 +106,7 @@ export default {
// DB -> store 持久化数据加载侧边栏折叠状态
await dispatch('d2admin/menu/asideCollapseLoad', null, { root: true })
// DB -> store 持久化数据加载全局尺寸
commit('d2admin/size/load', null, { root: true })
await dispatch('d2admin/size/load', null, { root: true })
// end
resolve()
})

View File

@@ -4,34 +4,42 @@ export default {
// 尺寸
value: '' // medium small mini
},
mutations: {
actions: {
/**
* @description 设置尺寸
* @param {Object} state vuex state
* @param {String} size 尺寸
*/
set (state, size) {
// store 赋值
state.value = size
// 持久化
this.dispatch('d2admin/db/set', {
dbName: 'sys',
path: 'size.value',
value: state.value,
user: true
set ({ state, dispatch }, size) {
return new Promise(async resolve => {
// store 赋值
state.value = size
// 持久化
await dispatch('d2admin/db/set', {
dbName: 'sys',
path: 'size.value',
value: state.value,
user: true
}, { root: true })
// end
resolve()
})
},
/**
* @description 从持久化数据读取尺寸设置
* @param {Object} state vuex state
*/
async load (state) {
// store 赋值
state.value = await this.dispatch('d2admin/db/get', {
dbName: 'sys',
path: 'size.value',
defaultValue: 'default',
user: true
load ({ state, dispatch }) {
return new Promise(async resolve => {
// store 赋值
state.value = await dispatch('d2admin/db/get', {
dbName: 'sys',
path: 'size.value',
defaultValue: 'default',
user: true
}, { root: true })
// end
resolve()
})
}
}