DEV Community

Discussion on: 🔐 Private Route in React Router v6

Collapse
 
iamandrewluca profile image
Andrei Luca

In example bellow children inside PrivateRoute equals <Private />

function App() {
  return (
    <BrowserRouter>
      <Routes>
        <Route path="/" element={<Public />} />
        <Route
          path="/private"
          element={
            <PrivateRoute>
              <Private />
            </PrivateRoute>
          }
        />
      </Routes>
    </BrowserRouter>
  );
}
Enter fullscreen mode Exit fullscreen mode
Collapse
 
rakeshmokariya profile image
Rakeshmokariya

Ok i understood.Thank you so much.

Collapse
 
devopshasan profile image
Hasan Habib

Could you please share multiple private route example. What your suggestion to keep the code looks clean?
Thank you.

Thread Thread
 
iamandrewluca profile image
Andrei Luca • Edited

Hey Hasan!

You can put them as adjacent routes

function App() {
  return (
    <BrowserRouter>
      <Routes>
        <Route
          path="/private-2"
          element={
            <PrivateRoute>
              <Private1 />
            </PrivateRoute>
          }
        />
        <Route
          path="/private-2"
          element={
            <PrivateRoute>
              <Private2 />
            </PrivateRoute>
          }
        />
      </Routes>
    </BrowserRouter>
  );
}
Enter fullscreen mode Exit fullscreen mode

or you can put all private routes in a single parent component that is private

function App() {
  return (
    <BrowserRouter>
      <Routes>
        <Route
          path="/all-private"
          element={
            <PrivateRoute>
              <AllPrivate />
            </PrivateRoute>
          }
        />
      </Routes>
    </BrowserRouter>
  );
}
Enter fullscreen mode Exit fullscreen mode