Former-commit-id: f7643a7bc73cc1c678c2c4a6574d54ecf939e529 [formerly f7643a7bc73cc1c678c2c4a6574d54ecf939e529 [formerly f7643a7bc73cc1c678c2c4a6574d54ecf939e529 [formerly f7643a7bc73cc1c678c2c4a6574d54ecf939e529 [formerly a63c247d1756615695e4cd743c8b9ff1bb30f297 [formerly 7e5f49d341a9037b2dd77ac6c7ea0bfb8998f307]]]]]
Former-commit-id: 6d11cf118e7916d07ac08c51706469046011968b
Former-commit-id: fb85bcdd39e82f5b4567d8e8c712d2499555eb3e
Former-commit-id: aa74cf284d58e2671677e911a61babee0a36932e [formerly 50dce6ce583a14ad116c7ebadd7d835ac8be03c5]
Former-commit-id: e7085366dbe0ca59b31077537d6499eb49e5ae1b
Former-commit-id: 77117d4838bdc9680f45d0c534dbefdb957ef778
Former-commit-id: e4e8f0bd37dfc653561b928abf473b3cc32850df
Former-commit-id: 01ac1a30c777399eaff801ab5b4ebbc2c617cdbf
Former-commit-id: 2a651e242aba08678d20696759de7e022a3f35de
This commit is contained in:
liyang
2018-09-14 09:45:23 +08:00
parent 8c3c2f81eb
commit e5fe71d955
3 changed files with 64 additions and 50 deletions

View File

@@ -80,7 +80,7 @@
</template>
<script>
import { mapState, mapGetters, mapMutations } from 'vuex'
import { mapState, mapGetters, mapActions } from 'vuex'
import mixinSearch from './mixins/search'
export default {
name: 'd2-layout-header-aside',
@@ -128,14 +128,14 @@ export default {
}
},
methods: {
...mapMutations({
menuAsideCollapseToggle: 'd2admin/menu/asideCollapseToggle'
}),
...mapActions('d2admin/menu', [
'asideCollapseToggle'
]),
/**
* 接收点击切换侧边栏的按钮
*/
handleToggleAside () {
this.menuAsideCollapseToggle()
this.asideCollapseToggle()
}
}
}

View File

@@ -104,7 +104,7 @@ export default {
// DB -> store 持久化数据加载上次退出时的多页列表
commit('d2admin/page/openedLoad', null, { root: true })
// DB -> store 持久化数据加载侧边栏折叠状态
commit('d2admin/menu/asideCollapseLoad', null, { root: true })
await dispatch('d2admin/menu/asideCollapseLoad', null, { root: true })
// DB -> store 持久化数据加载全局尺寸
commit('d2admin/size/load', null, { root: true })
// end

View File

@@ -11,6 +11,64 @@ export default {
// 侧边栏收缩
asideCollapse: setting.menu.asideCollapse
},
actions: {
/**
* 设置侧边栏展开或者收缩
* @param {Object} state vuex state
* @param {Boolean} collapse is collapse
*/
asideCollapseSet ({ state, dispatch }, collapse) {
return new Promise(async resolve => {
// store 赋值
state.asideCollapse = collapse
// 持久化
await dispatch('d2admin/db/set', {
dbName: 'sys',
path: 'menu.asideCollapse',
value: state.asideCollapse,
user: true
}, { root: true })
// end
resolve()
})
},
/**
* 切换侧边栏展开和收缩
* @param {Object} state vuex state
*/
asideCollapseToggle ({ state, dispatch }) {
return new Promise(async resolve => {
// store 赋值
state.asideCollapse = !state.asideCollapse
// 持久化
await dispatch('d2admin/db/set', {
dbName: 'sys',
path: 'menu.asideCollapse',
value: state.asideCollapse,
user: true
}, { root: true })
// end
resolve()
})
},
/**
* 从持久化数据读取侧边栏展开或者收缩
* @param {Object} state vuex state
*/
asideCollapseLoad ({ state, dispatch }) {
return new Promise(async resolve => {
// store 赋值
state.asideCollapse = await dispatch('d2admin/db/get', {
dbName: 'sys',
path: 'menu.asideCollapse',
defaultValue: setting.menu.asideCollapse,
user: true
}, { root: true })
// end
resolve()
})
}
},
mutations: {
/**
* @description 设置顶栏菜单
@@ -29,50 +87,6 @@ export default {
asideSet (state, menu) {
// store 赋值
state.aside = menu
},
/**
* 设置侧边栏展开或者收缩
* @param {Object} state vuex state
* @param {Boolean} collapse is collapse
*/
asideCollapseSet (state, collapse) {
// store 赋值
state.asideCollapse = collapse
// 持久化
this.dispatch('d2admin/db/set', {
dbName: 'sys',
path: 'menu.asideCollapse',
value: state.asideCollapse,
user: true
})
},
/**
* 切换侧边栏展开和收缩
* @param {Object} state vuex state
*/
asideCollapseToggle (state) {
// store 赋值
state.asideCollapse = !state.asideCollapse
// 持久化
this.dispatch('d2admin/db/set', {
dbName: 'sys',
path: 'menu.asideCollapse',
value: state.asideCollapse,
user: true
})
},
/**
* 从持久化数据读取侧边栏展开或者收缩
* @param {Object} state vuex state
*/
async asideCollapseLoad (state) {
// store 赋值
state.asideCollapse = await this.dispatch('d2admin/db/get', {
dbName: 'sys',
path: 'menu.asideCollapse',
defaultValue: setting.menu.asideCollapse,
user: true
})
}
}
}