web-dev-qa-db-fra.com

Comment définir une URL de base pour react-router au niveau de l'application?

J'ai créé une application avec create-react-app que je souhaite installer dans un sous-répertoire de mon site Web. La méthode recommandée consiste à ajouter process.env.PUBLIC_URL comme baseurl. c'est à dire:

<Route exact path={`${process.env.PUBLIC_URL}/signin`} component={SigninPage}/>

Maintenant, existe-t-il un moyen de le définir au niveau de l'application afin de ne pas avoir à dupliquer ce morceau de code sur tous les itinéraires ou liens ou liens NavLinks?

Merci!

6
Fabrice

Vous pouvez le définir comme basename sur votre Router, voici des liens vers les documents du routeur React: basename in BrowserRouter et basename dans HashRouter . Cela ressemblerait à quelque chose comme ceci:

<Router basename={process.env.PUBLIC_URL}>
</Router>
12
margaretkru