Après la mise à niveau mon application Angular2 à angulaire ^4.1.2
et aussi la bêta angulaire CLI à ^1.0.3
, je suis un 404 non trouvé pour mes fichiers * .bundle.js lors de l'exécution de l'application avec ng serve
. Notez que ce symptôme ne s'est pas produit dans Angular2 et Angular CLI beta.
Configuration
Ce problème existe seulement quand je définir l'URL de base html5 à une URL personnalisée dans index.html
, par exemple <base href="/some-path/">
. (Autrement dit, si je l'ai mis à <base href="/">
, les fichiers *.bundle.js
se trouvent et mes œuvres app)
enquête
Le symptôme se produit dans les circonstances décrites, car les fichiers sont servis au niveau de la racine par cli angulaire , peu importe l'URL de base html5. Donc, la vraie question est: Comment puis-je dire à CLI Angular de servir les fichiers * .bundle.js sur l'URL de base spécifiée OU dire angulaire de ramasser les fichiers à la racine? J'ai trouvé un issue request qui semble traiter exactement ce problème. Par conséquent, il existe une option --base-href
pour les commandes ng serve
et ng build
.
J'ai essayé d'utiliser ces options isolées ainsi que combiné:
ng serve --base-href /assessment/
ng serve --base-href /assessment/ --deploy-url /assessment/
Cependant, le symptôme est resté.