import { Outlet, history, useLocation } from 'umi'; import styles from './index.less'; import { useEffect, useState } from 'react'; import { MenuType, tabsType } from '@/utils/menu'; import { Select, message } from 'antd'; import LeftMenuOne from '@/layouts/LeftMenuOne'; import LeftMenuTwo from '@/layouts/LeftMenuTwo'; import BottomConfigInfo from '@/layouts/BottomConfigInfo'; const options2 = [ { value: 1, label: 'GLQ管理' }, { value: 2, label: 'MY管理' }, { value: 3, label: 'SB管理' }, { value: 4, label: 'SF管理' }, { value: 5, label: 'SBJK二维版', disabled: true }, { value: 6, label: '设备注册', disabled: true } ] const leftMenuType: any = { // GLQ管理 'GLQ远程维护': , '网络MMJ管理': , '网络GLQ配置': , // MY管理 '密钥体管理': , '密钥管理': , '邮箱管理': , // SB管理 '设备管理': , '日志管理': , '审计管理': , '境外任务管理': , // SF管理 '算法资源管理': , '算法配置管理': , '算法托收管理': , '算法邮箱管理': , // SBJK二维版 '设备监控二维版':
, // 设备注册 '注册管理': , '位置管理': } export default function Layout() { const [selectVal, setSelectVal] = useState(1); const [tabList, setTabList] = useState([]); const [active, setActive] = useState(1); const [activeName, setActiveName] = useState('GLQ远程维护'); // 获取布局信息 let layoutInfo: any = localStorage.getItem('layoutInfo'); layoutInfo = JSON.parse(layoutInfo); useEffect(() => { // 校验浏览器是否有储存的布局信息 if (layoutInfo) { setActive(layoutInfo.active); setActiveName(layoutInfo.activeName); setSelectVal(layoutInfo.selectVal); setTabList([...tabsType[layoutInfo.selectVal]]); } else { setTabList([...tabsType[selectVal]]); } }, []) // 页面销毁前记录下当前布局信息 window.addEventListener('beforeunload', function (event) { let layoutInfo: any = { selectVal: selectVal, active: active, activeName: activeName, } localStorage.setItem('layoutInfo', JSON.stringify(layoutInfo)); }); useEffect(() => { // 条件判断: 当选择框的值发生改变时,在(tabList长度大于0 并且 没有发现记录布局的数据)时 ,默认进入第一个模块的页面 if (tabList.length > 0 && !layoutInfo) { setActiveName(tabList[0].name) let info = MenuType[tabList[0].name]; if (info[0].data) { history.push(`${info[0].data[0].url}`) } else { history.push(`${info[0].url}`) } } }, [selectVal]) return (
{/* 顶部导航 */}
XXXX管理系统