You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
1.1 KiB

2 years ago
  1. import { unstable_HistoryRouter, BrowserRouter as HistoryRouter, Routes, Route} from 'react-router-dom'
  2. import { history } from './utils/history'
  3. import Layout from '@/pages/Layout'
  4. import Login from '@/pages/Login'
  5. import Home from '@/pages/Home'
  6. import Article from '@/pages/Article'
  7. import Publish from '@/pages/Publish'
  8. import { AuthComponent } from '@/components/AuthComponent'
  9. import './App.css'
  10. function App() {
  11. return (
  12. // 路由配置
  13. <HistoryRouter history={history}>
  14. <div className="App">
  15. <Routes>
  16. {/* 创建路由 path 和组件对应关系 */}
  17. {/* Layout 需要鉴权处理, 这里的 Layout 一定不能写死,要根据是否登录进行判断 */}
  18. <Route path='/' element={
  19. <AuthComponent><Layout/></AuthComponent>
  20. }>
  21. <Route index element={<Home/>}></Route>
  22. <Route path='article' element={<Article/>}></Route>
  23. <Route path='publish' element={<Publish/>}></Route>
  24. </Route>
  25. <Route path='/login' element={<Login/>}></Route>
  26. </Routes>
  27. </div>
  28. </HistoryRouter>
  29. );
  30. }
  31. export default App;