San3yuan | 4d0e803 | 2025-04-04 17:21:40 +0800 | [diff] [blame] | 1 | import { createBrowserRouter } from 'react-router-dom' |
| 2 | import PrivateRoute from './privateRoute' |
San3yuan | 2534d42 | 2025-04-08 21:43:18 +0800 | [diff] [blame] | 3 | import { useSelector } from 'react-redux' |
San3yuan | 6f2ed69 | 2025-04-16 20:24:49 +0800 | [diff] [blame] | 4 | import Login from '../views/login/login' |
San3yuan | 03ab064 | 2025-04-29 18:00:25 +0800 | [diff] [blame] | 5 | import Frame from '../views/frame/frame' |
San3yuan | 4d0e803 | 2025-04-04 17:21:40 +0800 | [diff] [blame] | 6 | import React from 'react' |
| 7 | import Forum from '../views/forum' |
San3yuan | 2534d42 | 2025-04-08 21:43:18 +0800 | [diff] [blame] | 8 | import { RootState } from '@/store' |
San3yuan | a2ee30b | 2025-06-05 21:20:17 +0800 | [diff] [blame^] | 9 | import PostList from '../views/postList/postList' |
| 10 | import PostDetail from '../views/postDetail/postDetail' |
San3yuan | 4d0e803 | 2025-04-04 17:21:40 +0800 | [diff] [blame] | 11 | |
| 12 | const router = createBrowserRouter([ |
| 13 | { |
| 14 | path: '/', |
San3yuan | 6f2ed69 | 2025-04-16 20:24:49 +0800 | [diff] [blame] | 15 | element: |
| 16 | <PrivateRoute |
San3yuan | 2534d42 | 2025-04-08 21:43:18 +0800 | [diff] [blame] | 17 | role={0} // 判断是否登录 |
| 18 | redirectPath="/login"/>, |
| 19 | children: [ |
| 20 | { |
San3yuan | 03ab064 | 2025-04-29 18:00:25 +0800 | [diff] [blame] | 21 | path:'/', |
| 22 | element: <Frame/>, |
| 23 | children: [ |
| 24 | { |
| 25 | index: true, |
| 26 | element:<Forum/> |
| 27 | |
| 28 | }, |
San3yuan | a2ee30b | 2025-06-05 21:20:17 +0800 | [diff] [blame^] | 29 | { |
| 30 | path: '/posts', |
| 31 | element: <PostList/> |
| 32 | }, |
| 33 | { |
| 34 | path: '/postsDetail', |
| 35 | element: <PostDetail/> |
| 36 | } |
San3yuan | 03ab064 | 2025-04-29 18:00:25 +0800 | [diff] [blame] | 37 | ] |
San3yuan | 2534d42 | 2025-04-08 21:43:18 +0800 | [diff] [blame] | 38 | }, |
| 39 | ] |
San3yuan | 4d0e803 | 2025-04-04 17:21:40 +0800 | [diff] [blame] | 40 | }, |
| 41 | { |
| 42 | path: '/login', |
| 43 | element: <Login /> // 登录页作为独立路由 |
| 44 | } |
San3yuan | 2534d42 | 2025-04-08 21:43:18 +0800 | [diff] [blame] | 45 | |
| 46 | |
| 47 | |
San3yuan | 4d0e803 | 2025-04-04 17:21:40 +0800 | [diff] [blame] | 48 | ] |
| 49 | ) |
| 50 | |
| 51 | export default router |