diff --git a/src/store/modules/app.js b/src/store/modules/app.js index e37aedd..1903a3a 100644 --- a/src/store/modules/app.js +++ b/src/store/modules/app.js @@ -1,3 +1,24 @@ +// 默认模块显示配置 +const defaultModuleVisibilityMap = { + home: true, + model: true, + register: true, + product: true, + route: true, + planes: true, + site: true, + shop: true, + admin: true, + category: true, + broadcast: true, + order: true, + nofly: true +} + +// 从 localStorage 读取已有配置,合并覆盖默认配置 +const savedVisibility = JSON.parse(localStorage.getItem('moduleVisibilityMap') || '{}') +const moduleVisibilityMap = { ...defaultModuleVisibilityMap, ...savedVisibility } + const state = { mqttState: false, // mqtt连接状态 isCollapse: localStorage.getItem('isCollapse') ? !!+localStorage.getItem('isCollapse') : true, // 侧边导航栏 显隐 @@ -6,6 +27,8 @@ const state = { defaultLonLat: null, // 地图默认经纬度 defaultZoom: null, // 地图默认缩放 + moduleVisibilityMap, // 使用合并后的 moduleVisibilityMap 初始化 + /* 页面参数 */ orderSerch: null, // 订单列表页搜索条件 toMessageIdArr: [], // 用户管理 发布公告页面 id临时传参 @@ -14,6 +37,15 @@ const state = { } const mutations = { + // 设置 模块显示隐藏参数 + setModuleVisibility (state, { key, visible }) { + state.moduleVisibilityMap[key] = visible + localStorage.setItem('moduleVisibilityMap', JSON.stringify(state.moduleVisibilityMap)) + }, + setAllModuleVisibility (state, visibilityMap) { + state.moduleVisibilityMap = visibilityMap + localStorage.setItem('moduleVisibilityMap', JSON.stringify(state.moduleVisibilityMap)) + }, // 导航栏 显隐 setCollapse () { state.isCollapse = !state.isCollapse diff --git a/src/views/layout/components/main/home/set.vue b/src/views/layout/components/main/home/set.vue index bca859a..16680e1 100644 --- a/src/views/layout/components/main/home/set.vue +++ b/src/views/layout/components/main/home/set.vue @@ -1,19 +1,79 @@ - - diff --git a/src/views/layout/components/menubar.vue b/src/views/layout/components/menubar.vue index 9c18d13..688a20a 100644 --- a/src/views/layout/components/menubar.vue +++ b/src/views/layout/components/menubar.vue @@ -16,21 +16,27 @@ -