web-dev-qa-db-fra.com

Utiliser "" homepage "` dans package.json, sans gâcher les chemins pour localhost

Cette question découle en fait directement de mon réponse sur une question précédente.

J'ai ajouté un "homepage" à mon package.json car il s'agit d'une application React que j'ai hébergée sur Github Pages. La sortie de npm run build dire que le /build le répertoire peut maintenant être déployé et il suppose que le projet est hébergé sur /project_name/.

Mais sur localhost, le projet ( n'est pas hébergé chez /project_name/, donc les chemins demandés pour js et css sont foirés (recherche de /project_name/static/... au lieu de /static/...) et l'application cassée.

Comment peut-on avoir le champ de page d'accueil dans package.json afin qu'ils puissent se déployer sur Github Pages (par exemple) tout en continuant à se développer localement avec une application qui fonctionne?

19
tscizzle

Docs pour create-react-app explique comment servir le même build à partir de chemins relatifs différents.

Si vous mettez la page d'accueil en tant que

"homepage": ".",

les actifs seront servis par rapport à index.html

À des fins de développement, servir à l'aide de yarn start ou npm start est assez bon. L'application sera disponible dans localhost

16
sudo bangbang