修复首页菜单闪烁的问题

增加收起侧边菜单的功能
This commit is contained in:
dushixiang 2021-02-14 01:16:06 +08:00
parent 3a9240e08a
commit abf1e0217c

View File

@ -23,8 +23,6 @@ import {
IdcardOutlined, IdcardOutlined,
LinkOutlined, LinkOutlined,
LoginOutlined, LoginOutlined,
MenuFoldOutlined,
MenuUnfoldOutlined,
SettingOutlined, SettingOutlined,
SolutionOutlined, SolutionOutlined,
TeamOutlined, TeamOutlined,
@ -55,10 +53,11 @@ class App extends Component {
user: { user: {
'nickname': '未定义' 'nickname': '未定义'
}, },
package: NT_PACKAGE() package: NT_PACKAGE(),
triggerMenu: true
}; };
toggle = () => { onCollapse = () => {
this.setState({ this.setState({
collapsed: !this.state.collapsed, collapsed: !this.state.collapsed,
}); });
@ -78,10 +77,11 @@ class App extends Component {
let result = await request.get('/info'); let result = await request.get('/info');
if (result['code'] === 1) { if (result['code'] === 1) {
this.setState({
user: result['data']
})
sessionStorage.setItem('user', JSON.stringify(result['data'])); sessionStorage.setItem('user', JSON.stringify(result['data']));
this.setState({
user: result['data'],
triggerMenu: true
})
} else { } else {
message.error(result['message']); message.error(result['message']);
} }
@ -120,7 +120,7 @@ class App extends Component {
<Route path="/"> <Route path="/">
<Layout className="layout" style={{minHeight: '100vh'}}> <Layout className="layout" style={{minHeight: '100vh'}}>
<Sider trigger={null} collapsible collapsed={this.state.collapsed} style={{width: 256}}> <Sider collapsible collapsed={this.state.collapsed} onCollapse={this.onCollapse}>
<div className="logo"> <div className="logo">
<img src='logo.svg' alt='logo'/> <img src='logo.svg' alt='logo'/>
{ {
@ -175,7 +175,7 @@ class App extends Component {
</SubMenu> </SubMenu>
{ {
isAdmin() ? this.state.triggerMenu && isAdmin() ?
<> <>
<SubMenu key='audit' title='操作审计' icon={<AuditOutlined/>}> <SubMenu key='audit' title='操作审计' icon={<AuditOutlined/>}>
<Menu.Item key="online-session" icon={<LinkOutlined/>}> <Menu.Item key="online-session" icon={<LinkOutlined/>}>
@ -221,7 +221,7 @@ class App extends Component {
</Menu.Item> </Menu.Item>
{ {
isAdmin() ? this.state.triggerMenu && isAdmin() ?
<> <>
<Menu.Item key="setting" icon={<SettingOutlined/>}> <Menu.Item key="setting" icon={<SettingOutlined/>}>
<Link to={'/setting'}> <Link to={'/setting'}>
@ -231,13 +231,6 @@ class App extends Component {
</> : undefined </> : undefined
} }
</Menu> </Menu>
<div>
{React.createElement(this.state.collapsed ? MenuUnfoldOutlined : MenuFoldOutlined, {
className: 'trigger',
onClick: this.toggle,
})}
</div>
</Sider> </Sider>
<Layout className="site-layout"> <Layout className="site-layout">