From 8d66ff34fae5b048a6b7923cc75d34f13a08be9d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 02 八月 2022 11:42:43 +0800 Subject: [PATCH] Merge branch 'develop' --- src/store/reducer.js | 61 ++++++++++++++++++++---------- 1 files changed, 40 insertions(+), 21 deletions(-) diff --git a/src/store/reducer.js b/src/store/reducer.js index 7ef0bcf..15db885 100644 --- a/src/store/reducer.js +++ b/src/store/reducer.js @@ -1,52 +1,71 @@ import * as Type from './action-type' +let _mainMenu = null +let _url = window.location.href.split('#')[0] +let _collapse = localStorage.getItem('collapse') === 'true' + +if (localStorage.getItem(_url + '-sideHidden') === 'true') { + _mainMenu = '' +} + let defaultState = { - selectedMainMenu: '', // 宸查�変富鑿滃崟 - tabviews: [], // 瀵艰埅鏍� - collapse: false, // 鏄惁鏀惰捣渚ц竟鏍忓鑸� - isiframe: false, // 鏄惁涓篿frame绐楀彛 - debug: false // 鐭ュ惁鍙互澶嶅埗鑿滃崟鍙傛暟 + menuTree: null, // 鑿滃崟缁撴瀯鏍� + mainMenu: _mainMenu, // 宸查�変富鑿滃崟 + collapse: _collapse, // 鏄惁鏀惰捣渚ц竟鏍忓鑸� + editLevel: null, // 缂栬緫鑿滃崟绾у埆锛屽�间负level1銆乴evel2銆乴evel3銆丠S + permAction: {}, // 鐢ㄦ埛鎸夐挳鏉冮檺 + permMenus: [], // 鐢ㄦ埛涓夌骇鑿滃崟鍒楄〃 } // 鐢ㄦ埛娑堟伅 export default (state = defaultState, action = {}) => { switch (action.type) { case Type.Toggle_COLLAPSE: + // 鍒囨崲鑿滃崟鏍忓睍寮�鍚堝苟鐘舵�� return { ...state, collapse: action.collapse } + case Type.MODIFY_MENUTREE: + // 鍒濆鍖栬彍鍗曚俊鎭� + return { + ...state, + menuTree: action.menuTree + } case Type.MODIFY_MAINMENU: + // 鍒囨崲涓昏彍鍗� return { ...state, - selectedMainMenu: action.selectedMainMenu + mainMenu: action.mainMenu } - case Type.MODIFY_TABVIEW: + case Type.RESET_EDITLEVEL: + // 閲嶇疆缂栬緫绾у埆 return { ...state, - tabviews: action.tabviews + editLevel: action.editLevel } - case Type.TOGGLE_ISIFRAME: + case Type.INIT_ACTIONPERMISSION: + // 鍒濆鍖栨寜閽潈闄� return { ...state, - isiframe: action.isiframe + permAction: action.permAction } - case Type.RESET_STATE: + case Type.INIT_MENUPERMISSION: + // 鍒濆鍖栦笁绾ц彍鍗曟潈闄� return { ...state, - ...{ - selectedMainMenu: '', - tabviews: [], - collapse: false, - isiframe: false - } + permMenus: action.permMenus } - case Type.RESET_DEBUG: + case Type.LOGOUT: return { - ...state, - debug: true + menuTree: null, + mainMenu: null, + collapse: localStorage.getItem('collapse') === 'true', + editLevel: null, + permAction: {}, + permMenus: [], } default: return state } -} \ No newline at end of file +} -- Gitblit v1.8.0