Commit d8557afd by maolipeng

Merge branch 'feature/maolipeng/youhua' into feature/maolipeng/20210610/zuhuyouhua

# Conflicts:
#	yarn.lock
parents 08b590b6 4fa775ed
import React, { useContext, useEffect, useRef, useState } from 'react';
import React, { Key, useContext, useEffect, useRef, useState } from 'react';
import {
withRouter,
} from 'react-router-dom';
......@@ -129,6 +129,7 @@ function Aside(props: any) {
const ctx: any = useContext(XMContext);
const [selectKey, setSelectKey] = useState();
const [openKeys, setOpenKeys] = useState(['']);
const [lastOpenKeys, setLastOpenKeys] = useState(['']);
const [topLogoUrl, setTopLogoUrl] = useState("")
const [collapsed, setCollapsed] = useState(false)
const rootSubmenuKeys = _.pluck(menuList, 'groupCode');
......@@ -138,6 +139,7 @@ function Aside(props: any) {
if (link.indexOf(item.link) !== -1) {
setSelectKey(item.groupCode);
setOpenKeys([])
setLastOpenKeys([])
} else if (item.children) {
item.children.map((_item: any, _index: any) => {
if (link.indexOf(_item.link) !== -1) {
......@@ -166,30 +168,45 @@ function Aside(props: any) {
}
function toggleMenu(item: any) {
window.RCHistory.push(item.link)
// if (!menuType) {
// setOpenKeys([])
// }
if (!menuType) {
setOpenKeys([])
}
function onOpenChange(key: any) {
}
function onOpenChange(key: Key[]) {
if (typeof key === "string") {
if (openKeys.includes(key)) {
setOpenKeys([]);
setLastOpenKeys([]);
} else {
setOpenKeys([key]);
setLastOpenKeys([key])
}
}
}
function onOpenChangeForHover(key: any) {
function onOpenChangeForHover(key: Key[]) {
if (menuType) {
return
}
if (typeof key === "string") {
if (openKeys.includes(key)) {
setOpenKeys([]);
setLastOpenKeys([]);
} else {
setOpenKeys([key]);
setLastOpenKeys([key])
}
}
}
function handleMenu() {
handleMenuType();
setCollapsed(!collapsed)
// if (!collapsed) {
// setOpenKeys([])
// } else {
// setOpenKeys(lastOpenKeys)
// }
}
return (
......@@ -226,7 +243,10 @@ function Aside(props: any) {
<div className="nav">
<Menu
style={{ minHeight: "100%", background: '#0E1935' }}
style={menuType ? { minHeight: "100%", background: '#0E1935' }:{minHeight: "100%", background: '#0E1935',width:"56px" }}
selectedKeys={selectKey}
openKeys={openKeys}
onOpenChange={onOpenChange}
inlineCollapsed={collapsed}
mode={menuType ? "inline" : "vertical"}
>
......@@ -239,14 +259,16 @@ function Aside(props: any) {
return <SubMenu
key={item.groupCode}
style={{ marginTop: 0 }}
title={<div><img src={item.img} className="icon-img"></img><span>{item.groupName}</span></div> }
onTitleClick={() => onOpenChange(item.groupCode)}>
icon={<img src={item.img} className="icon-img"></img>}
title={menuType ? <span>{item.groupName}</span> : ""}
onTitleClick={() => onOpenChange(item.groupCode)}
>
{
item.children.map((_item: any, _index: any) => {
if (ctx.xmState.storeUserPermissionList.indexOf(_item.groupCode) === -1) {
return null;
}
return <Menu.Item onClick={() => { toggleMenu(_item) }} style={{ marginTop: 0 }} key={_item.groupCode + index + _index}>
return <Menu.Item onClick={() => { toggleMenu(_item) }} style={{ marginTop: 0 }} key={_item.groupCode + index + _index} >
<span className="name">{_item.groupName}</span>
</Menu.Item>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment