¿El archivo environmentSource de angular-cli siempre se carga?

4

Busqué en los documentos y no pude encontrar la respuesta, ¿el archivo 'environmentSource' de angular-cli siempre se carga sin importar el entorno que elija? (por ejemplo, prod)

Estoy configurando mi proyecto para que funcione con diferentes archivos env para dev, staging y prod y quería saber si este archivo siempre está cargado para poder poner las configuraciones generales de env allí.

Voy a elaborar, digamos que mi archivo angular-cli se ve así:

"environmentSource": "environments/environment.ts",
"environments": {
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}

y ejecuto la compilación con --prod, ¿se cargarán tanto "environment.ts" (que está configurado como 'environmentSource') como "environment.prod.ts"? lo que quiero decir es que si tengo baseUrl en environment.ts pero no en environment.prod.ts, ¿aún podré usar baseUrl cuando se ejecute en --prod?

Gracias,

Una vez

2

El contenido de "entornos / entorno.ts" se utiliza en su código. Pero al crear / servir para un entorno específico, el contenido de ese archivo se reemplaza dinámicamente por otro archivo de entorno si es necesario.

Si ejecuta con la --prodbandera, significa que environment.prod.tsse sobrescribirá environment.ts. Entonces, en su código, siempre importa environment.ts, pero con --prodel contenido en realidad será el deenvironment.prod.ts

2
  • lo sobrescribe por completo o solo las variables que son iguales en el archivo? lo que quiero decir es que si tengo baseUrl en environment.ts pero no en environment.prod.ts, ¿aún podré usar baseUrl cuando se ejecute en --prod? 10 de mayo de 2018 a las 6:29
  • Creo que se anula por completo, por lo que no podría usar esa variable. La mejor forma es intentar confirmar
    David
    10 de mayo de 2018 a las 6:30
2

environmentSource reemplazará entornos> fuente.

encontrar-

"environments": {
"source": "environments/environment.ts",
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}

y reemplazar con:

"environmentSource": "environments/environment.ts",
"environments": {
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}

Una nueva entrada de environmentSource reemplaza la entrada de fuente anterior dentro de los entornos.

1
  • He editado mi pregunta, creo que no me entendiste del todo. Quería entender si se cargarán tanto environmentSource como el env que elegí (por ejemplo, prod) 10 de mayo de 2018 a las 6:07