J'ai une application réagissante que je joue avec et utilise avec une API Star Wars I construite localement.
Les deux premiers itinéraires fonctionnent bien, mais je ne comprends pas pourquoi le troisième ne fonctionne pas. p>
Mon hypothèse est que cela va à la troisième route Le second composant pense que le travail "Edit" est le paramètre. P>
question est, comment puis-je faire fonctionner le troisième parcours de route aimerait ou dois-je prendre une autre approche. P>
J'espérais que la page Edit Episode soit dans le même groupe que les composants que j'utilise dans le chemin "Starwars". p>
3 Réponses :
pouvez-vous s'il vous plaît modifier l'ordre de l'itinéraire code> et définir EXACT code> par mot-clé au
/ starwars / édition /: id code> chemin.
<Route path="/starwars" exact component={Movies} />
<Route exact path="/starwars/edit/:id" component={EditEpisode} />
<Route path="/starwars/:id" component={Episode} />
Pouvez-vous vérifier le Je suis allé là-bas et cela a fonctionné pour moi. P> PublicPath code> dans la propriété code> de sortie code> de votre fichier webpack.config. Cela devrait indiquer la racine de votre application.
output: {
path: path.resolve('dist'),
publicPath: '/'
}
Essayez d'ajouter un attribut exact au deuxième itinéraire. Il devrait résoudre le problème.
<Route path="/starwars" exact component={Movies} /> <Route path="/starwars/:id" exact component={Episode} /> <Route path="/starwars/edit/:id" component={EditEpisode} />
Cela a bien fonctionné pour moi. Merci d'avoir posté une solution.
Essayez d'ajouter un attribut exact en 2e route: