blob: 93e6cf968c8518ff99ffa25fab38b1226939758a [file] [log] [blame]
San3yuan4d0e8032025-04-04 17:21:40 +08001import { createBrowserRouter } from 'react-router-dom'
2import PrivateRoute from './privateRoute'
San3yuan2534d422025-04-08 21:43:18 +08003import { useSelector } from 'react-redux'
San3yuan6f2ed692025-04-16 20:24:49 +08004import Login from '../views/login/login'
San3yuan03ab0642025-04-29 18:00:25 +08005import Frame from '../views/frame/frame'
San3yuan4d0e8032025-04-04 17:21:40 +08006import React from 'react'
7import Forum from '../views/forum'
San3yuan2534d422025-04-08 21:43:18 +08008import { RootState } from '@/store'
San3yuana2ee30b2025-06-05 21:20:17 +08009import PostList from '../views/postList/postList'
10import PostDetail from '../views/postDetail/postDetail'
San3yuan4d0e8032025-04-04 17:21:40 +080011
12const router = createBrowserRouter([
13 {
14 path: '/',
San3yuan6f2ed692025-04-16 20:24:49 +080015 element:
16 <PrivateRoute
San3yuan2534d422025-04-08 21:43:18 +080017 role={0} // 判断是否登录
18 redirectPath="/login"/>,
19 children: [
20 {
San3yuan03ab0642025-04-29 18:00:25 +080021 path:'/',
22 element: <Frame/>,
23 children: [
24 {
25 index: true,
26 element:<Forum/>
27
28 },
San3yuana2ee30b2025-06-05 21:20:17 +080029 {
30 path: '/posts',
31 element: <PostList/>
32 },
33 {
34 path: '/postsDetail',
35 element: <PostDetail/>
36 }
San3yuan03ab0642025-04-29 18:00:25 +080037 ]
San3yuan2534d422025-04-08 21:43:18 +080038 },
39 ]
San3yuan4d0e8032025-04-04 17:21:40 +080040 },
41 {
42 path: '/login',
43 element: <Login /> // 登录页作为独立路由
44 }
San3yuan2534d422025-04-08 21:43:18 +080045
46
47
San3yuan4d0e8032025-04-04 17:21:40 +080048]
49)
50
51export default router