2
0

routes.tsx 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import React from 'react';
  2. import { createBrowserRouter, Navigate } from 'react-router';
  3. import { ProtectedRoute } from './components/ProtectedRoute';
  4. import { ErrorPage } from './components/ErrorPage';
  5. import { NotFoundPage } from './components/NotFoundPage';
  6. import MemberPage from './pages/MemberPage';
  7. import { MainLayout } from './layouts/MainLayout';
  8. import LoginPage from './pages/LoginPage';
  9. import FollowPage from './pages/FollowPage';
  10. import UserProfilePage from './pages/UserProfilePage';
  11. export const router = createBrowserRouter([
  12. {
  13. path: '/login',
  14. element: <LoginPage />
  15. },
  16. {
  17. path: '/',
  18. element: (
  19. <ProtectedRoute>
  20. <MainLayout />
  21. </ProtectedRoute>
  22. ),
  23. children: [
  24. {
  25. path: '',
  26. element: <MemberPage />
  27. },
  28. {
  29. path: 'follow',
  30. element: <FollowPage />
  31. },
  32. {
  33. path: 'users/:id',
  34. element: <UserProfilePage />
  35. },
  36. {
  37. path: '*',
  38. element: <NotFoundPage />,
  39. errorElement: <ErrorPage />
  40. },
  41. ],
  42. },
  43. {
  44. path: '*',
  45. element: <NotFoundPage />,
  46. errorElement: <ErrorPage />
  47. },
  48. ]);