routes.tsx 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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 HomePage from './pages/HomePage';
  7. import { MainLayout } from './layouts/MainLayout';
  8. import LoginPage from './pages/LoginPage';
  9. import UserProfilePage from './pages/MemberPage';
  10. export const router = createBrowserRouter([
  11. {
  12. path: '/login',
  13. element: <LoginPage />
  14. },
  15. {
  16. path: '/member',
  17. element: (
  18. <ProtectedRoute>
  19. <MainLayout />
  20. </ProtectedRoute>
  21. ),
  22. children: [
  23. {
  24. path: '',
  25. element: <HomePage />
  26. },
  27. {
  28. path: 'users/:id',
  29. element: <UserProfilePage />
  30. },
  31. {
  32. path: '*',
  33. element: <NotFoundPage />,
  34. errorElement: <ErrorPage />
  35. },
  36. ],
  37. },
  38. {
  39. path: '*',
  40. element: <NotFoundPage />,
  41. errorElement: <ErrorPage />
  42. },
  43. ]);