Maison > interface Web > js tutoriel > Comment structurer les routes imbriquées dans React Router v4 et v5 ?

Comment structurer les routes imbriquées dans React Router v4 et v5 ?

DDD
Libérer: 2024-10-31 02:15:29
original
532 Les gens l'ont consulté

How do you structure nested routes in React Router v4 and v5?

Routes imbriquées dans React Router

Dans les versions 4 et 5 de React Router, les routes imbriquées impliquent une approche légèrement différente. Au lieu d'imbriquer composants, vous les placez dans un autre .

Par exemple, la configuration de route imbriquée suivante :

<Match pattern="/" component={Frontpage}>
  <Match pattern="/home" component={HomePage} />
  <Match pattern="/about" component={AboutPage} />
</Match>
<Match pattern="/admin" component={Backend}>
  <Match pattern="/home" component={Dashboard} />
  <Match pattern="/users" component={UserPage} />
</Match>
<Miss component={NotFoundPage} />
Copier après la connexion

Doit être structurée comme suit :

<Route path="/" component={Frontpage} />
<Route path="/admin" component={Backend} />
Copier après la connexion

Dans ces composants, vous pouvez définir les routes enfants en tant que sous-composants du composant parent, comme démontré dans cet exemple :

<code class="javascript">const Frontpage = ({ match }) => (
  <div>
    {/* Child routes for the frontend */}
    <Link to={`${match.url}/home`}></Link>
    <Link to={`${match.url}/about`}></Link>
    <Route path={`${match.path}/home`} component={HomePage} />
    <Route path={`${match.path}/about`} component={AboutPage} />
  </div>
);

const Backend = ({ match }) => (
  <div>
    {/* Child routes for the admin area */}
    <Link to={`${match.url}/home`}></Link>
    <Link to={`${match.url}/users`}></Link>
    <Route path={`${match.path}/home`} component={Dashboard} />
    <Route path={`${match.path}/users`} component={UserPage} />
  </div>
);</code>
Copier après la connexion

Cette structure révisée garantit que /home dans le composant frontend est accessible à /, tandis que /admin/ home dans le composant backend est accessible dans /admin/home.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal