index.jsx 1005 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import './index.css';
  2. import { Outlet } from 'react-router-dom';
  3. import { Menu, Button } from 'antd';
  4. import { useSelector } from 'react-redux';
  5. import { useNavigate } from 'react-router-dom';
  6. export default function Layout() {
  7. const items = useSelector(({ system }) => system.menus);
  8. const navigate = useNavigate();
  9. function selectMenu({ key }) {
  10. navigate(key);
  11. }
  12. return (
  13. <div className="layout">
  14. <aside>
  15. <Button
  16. type="primary"
  17. ghost
  18. style={{ width: 'calc(100% - 4px)', boxSizing: 'border-box' }}
  19. >
  20. 导航菜单
  21. </Button>
  22. <Menu
  23. defaultSelectedKeys={['/']}
  24. mode="inline"
  25. inlineCollapsed={false}
  26. items={items}
  27. onClick={selectMenu}
  28. />
  29. </aside>
  30. <main>
  31. <header></header>
  32. <div className="main-page">
  33. <Outlet />
  34. </div>
  35. <footer>@copyright 爱扣钉学习项目</footer>
  36. </main>
  37. </div>
  38. );
  39. }