From 41c55c1f103658b997f7a828a7067bdb228f1df0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 04 十月 2022 23:35:10 +0800 Subject: [PATCH] 2022-10-04 --- src/store/reducer.js | 56 +++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 35 insertions(+), 21 deletions(-) diff --git a/src/store/reducer.js b/src/store/reducer.js index 7ef0bcf..4729c77 100644 --- a/src/store/reducer.js +++ b/src/store/reducer.js @@ -1,52 +1,66 @@ import * as Type from './action-type' +let _mainMenu = null +let _collapse = localStorage.getItem('collapse') === 'true' + 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