Вам потрібно скористатися новою configurationопцією (це працює ng buildі для ng serve)
ng serve --configuration=local
або
ng serve -c local
Якщо ви подивитеся на свій angular.jsonфайл, ви побачите, що ви маєте більш тонкий контроль над налаштуваннями для кожної конфігурації (aot, оптимізатор, файли оточення, ...)
"configurations": {
"production": {
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
]
}
}
Ви можете отримати більш детальну інформацію тут для управління навколишнього середовища конкретних конфігурацій.
Як зазначається в іншій відповіді нижче, якщо вам потрібно додати нове "середовище", вам потрібно додати нову конфігурацію до завдання збірки, а також, залежно від ваших потреб, до сервісних і тестових завдань.
Додавання нового середовища
Редагування : Щоб зрозуміти, в buildрозділі потрібно вказати заміну файлів . Отже, якщо ви хочете використовувати ng serveз певним environmentфайлом (скажімо, dev2 ), спочатку потрібно змінити buildрозділ, щоб додати нову конфігурацію dev2
"build": {
"configurations": {
"dev2": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.dev2.ts"
}
/* You can add all other options here, such as aot, optimization, ... */
],
"serviceWorker": true
},
Потім змініть свій serveрозділ, щоб також додати нову конфігурацію, вказуючи на щойно оголошену конфігурацію dev2 build
"serve":
"configurations": {
"dev2": {
"browserTarget": "projectName:build:dev2"
}
Потім ви можете використовувати ng serve -c dev2, який буде використовувати файл конфігурації dev2
angular-cliразом із усім додатком, тому я подумав, що це очевидно:]