初始化fateverse
This commit is contained in:
41
src/layout/sidebar/index.tsx
Normal file
41
src/layout/sidebar/index.tsx
Normal file
@@ -0,0 +1,41 @@
|
||||
import { Menu } from 'antd'
|
||||
import React, {Fragment, useEffect, useState} from 'react'
|
||||
import { useDispatch, useSelector } from 'react-redux';
|
||||
import { generateMenu } from '../../permission';
|
||||
import { useNavigate } from 'react-router-dom';
|
||||
|
||||
export default function SideBar() {
|
||||
const navigate = useNavigate()
|
||||
const routes: [] = useSelector((store: any)=>store.permission)
|
||||
const dispatch = useDispatch()
|
||||
const [menuItem, setMenuItem] = useState<Array<any>>([{
|
||||
key: '/',
|
||||
label: '首页',
|
||||
title: '首页',
|
||||
icon: ''
|
||||
}])
|
||||
const getMenu = () => {
|
||||
if(routes.length) {
|
||||
const roleMenu = generateMenu(routes as any)
|
||||
setMenuItem([...menuItem, ...roleMenu])
|
||||
}
|
||||
}
|
||||
const goPage = (val: any) => {
|
||||
navigate(val.key)
|
||||
}
|
||||
useEffect(()=>{
|
||||
getMenu()
|
||||
}, [routes.length])
|
||||
return (
|
||||
<Fragment>
|
||||
<div style={{height: '64px', display: 'flex', justifyContent: 'center', alignItems: 'center'}}>FateVerse</div>
|
||||
<Menu
|
||||
theme="dark"
|
||||
mode="inline"
|
||||
defaultSelectedKeys={['1']}
|
||||
items={menuItem}
|
||||
onClick={goPage}
|
||||
/>
|
||||
</Fragment>
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user