Maison >interface Web >js tutoriel >Comment corriger l'erreur « PrivateRoute n'est pas une » dans React Router v6 ?
React Router v6 : Erreur avec le composant de route privée
Vous rencontrez une erreur lors de la définition de routes privées dans React Router v6. Le message d'erreur indique que le composant PrivateRoute n'est pas un composant
Solution
Dans PrivateRoute.js, remplacez votre code par ce qui suit :
<code class="javascript">import React from 'react'; import { Navigate, Outlet } from 'react-router-dom'; const PrivateRoute = () => { const isAuthenticated = false; // Replace with your authentication logic return isAuthenticated ? <Outlet /> : <Navigate to="/home" />; }; export default PrivateRoute;</code>
Dans route.js, mettez à jour votre code comme suit :
<code class="javascript">... <PrivateRoute exact path="/"> <Route exact path="/" element={<Dashboard />} /> </PrivateRoute> <Route exact path="/home" element={<Home />} /></code>
Explication
Le composant PrivateRoute utilise désormais le composant
Dans App.js, assurez-vous d'envelopper vos itinéraires dans un
Notes supplémentaires
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!