La Route Par Défaut À Réagir Routeur 4
fI actuellement les itinéraires suivants définis dans mon application:
/
/selectSteps
/steps
/steps/alpha
/steps/beta
/steps/charlie
Qui pourrait également être visualisé comme ceci:
- (home)
- selectSteps
- steps
- alpha
- beta
- charlie
Mon composant racine ressemble à ceci:
<Route path="/" exact component={Home} />
<Route path="/select-steps" render={() => <StepSelectorContainer />} />
<Route path="/steps" component={StepsContainer} />
Mon Étapes composant ce:
steps.map(step => (
<Route
path={fullPathForStep(step.uid)}
key={shortid.generate()}
render={() => <StepContainer step={step} />}
/>
Tout cela fonctionne très bien, mais je ne veux pas steps
d'exister en tant qu'itinéraire dans son propre droit. Seul son enfant itinéraires doivent être visitables. Je suis donc à la recherche de perdre la /steps
route de quitter mes itinéraires:
/
/selectSteps
/steps/alpha
/steps/beta
/steps/charlie
Comment dois-je configurer mon parcours? Idéalement, frapper /steps
serait rediriger pour le premier enfant itinéraire.
OriginalL'auteur Undistraction | 2017-03-20
Vous devez vous connecter pour publier un commentaire.
En fait, c'est assez simple...
Utilisation
Redirect
composant à... eh bien, redirection.exact
prop garantit que vous ne serez pas redirigé depuis sous-route.Edit: après tout,
Redirect
prend en chargeexact
(oustrict
) accessoires. Pas besoin d'envelopper dansRoute
. De réponses mis à jour pour refléter ce fait.StepsContainer
que je suis rendu comme un wrapper autour de l'enfant composant rendus par l'enfant de l'itinéraire.OriginalL'auteur Andreyco
Pedr,
Je pense que cela va résoudre votre problème.
Et puis dans votre StepsComponent méthode de rendu, vous pouvez le faire.
Ce que cela va faire est de rendre les étapes de votre composant, car il le parcours commence avec /étapes. Après ce qui est du rendu, alors il rendra un des imbriqués les itinéraires basés sur l'url. Si l'url est juste "étapes", il vous redirigera vers la route initiale énumérés ici, dans ce cas "/étapes/alpa" par le rendu de la redirection. Le Switch va faire en sorte qu'elle ne rende l'un des itinéraires.
De crédit à Andreyco pour le code de redirection.
J'espère que cette aide.
OriginalL'auteur Guardian_nw