Passar variáveis de ambiente para um aplicativo Angular2?

Preciso passar o URL de back-end para meu aplicativo Angular2, pois os servidores de produção e desenvolvimento estão hospedados em locais diferentes.

Eu sei que eu poderia armazenar essas coisas em um config.json externo e carregar na inicialização. No entanto, isso parece uma chamada extra desnecessária para o servidor antes que o aplicativo possa ser iniciado.

Como alternativa, o que faço agora é criar uma única variável global, que injeto no gulp, dependendo da compilação. Meu aplicativo não é uma biblioteca que precisa ser reutilizável. Não acredito que deva acessarinesperado conflitos de nomes globais. Mas não é uma boa prática.

Será que existe uma terceira solução melhor?

questionAnswers(6)

yourAnswerToTheQuestion