Любые идеи о том, как использовать переменные среды в файле index.html
. Мне нужно включить .js script
A, если среда является prod и скриптом B, если среда - это что-то еще. В противном случае мне нужно будет вручную изменить файл index.html
перед развертыванием.Angular2: Использование переменных среды в index.html
ответ
Пожалуйста, смотрите на Load external js script dynamically in Angular 2 или Dynamically load JS inside JS для импорта файлов js динамически. Например, на основе вашего URL-адреса вы можете указать имя файла для импорта.
Другим вариантом было бы установить все значения в одном файле и определить, какие значения использовать на основе вашего URL, например. например
//prod values
foo = "bar";
//non-prod values
if (!prod) {
foo = "tux";
}
Лучшее решение для такого рода ситуации было бы использовать Continuous Integration (Gitlab, TeamCity, или что-то другое) инструмент. Когда вы загружаете файлы в репозиторий, например github или что-то подобное, инструмент CI будет получать файлы из вашего репозитория и копировать prod с js-файлами, которые содержат значения для вашей среды prod. Он также может тестировать, если вы написали тесты для своего приложения, в этом случае, когда тест завершится неудачей, он сломается и не скопирует файлы.
Надеюсь, это поможет.