Вам потрібно скористатися новою 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
разом із усім додатком, тому я подумав, що це очевидно:]