Set de base href partir d'une variable d'environnement avec ng construire
Personne ne sait comment accomplir cela avec le angulaires-cli? Je voudrais être capable de stocker les baseHref
chemin dans la variable d'environnement au sein de /src/environments/environment.x.ts
et basé sur l'environnement pendant la construction, être en mesure de définir la baseHref chemin.
Quelque chose comme ceci:
de l'environnement.ts
export const environment = {
production: false,
baseHref: '/'
};
de l'environnement.prod.ts
export const environment = {
production: true,
baseHref: '/my-app/'
};
Et ensuite appeler...
ng build --prod
...et mon /dist/index.html
fichier de montrer <base href="/my-app/">
.
J'ai pensé que peut-être si j'ai nommé ma variable d'environnement de même que la --base-href
option de compilation utilisé dans le commande de construction que la cli pourrait le ramasser, mais pas de dés il soit.
Est là d'une certaine manière pour faire référence à une variable d'environnement à partir de la ligne de commande? Quelque chose comme ng build --base-href environment.baseHref
?
- Pourquoi voulez-vous la base href dans le fichier d'environnement? La base href dans
index.html
peut être configuré avec--base-href your-url
- Parce que j'ai besoin de l'exécuter sur un serveur de build avec plusieurs, différents lieux de déploiement, et il est logique de tirer parti de la fonctionnalité intégrée qui angulaire de l'offre (si possible).
Vous devez vous connecter pour publier un commentaire.
Que vous auriez à utiliser
APP_BASE_HREF
Voir angulaire doc
MODIFIER
Depuis CSS/JS ne fonctionne pas avec APP_BASE_HREF, vous pouvez le faire:
Dans app.composante.ts, injecter du DOCUMENT par l'intermédiaire de
import {DOCUMENT} from "@angular/platform-browser";
Ensuite sur votre
ngOnInit()
@angular/common
http://localhost/Angular5Starter
livreralocalhost/somefile.js
au lieu delocalhost/Angular5Starter
. Cela peut-il être manipulé ou j'ai encore besoin de--base-href
?--base-href
si ce n'est pas sur la racine de votre de IIS. Peut-être il pourrait être une façon de le gérer avec le module de réécriture d'URL sur IIS, mais je n'ai pas exploré cette zone.