Angularで develop, production以外の環境を用意するときに便利だったコマンド。
ng build --prod -e=staging
ng build --prod --env=staging
これ、Angular6では使えなくなりました。
つかうと、
Unknown option: '--env'
と怒られます。
Angular6 では、 env
ではなく、 configuration
を指定します。
ただ、その前にいくつか準備が必要です。
Angular6の下記の部分を変更する必要があります。。
angular.json
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
"staging": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.staging.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": true,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
}
ここでは、 configurations
に staging
を追加しています。
Angular6では、 src/environments
以下の設定以外も変更しやすいように、 environment
ではなく、 configuration
になりました。
この設定を適用するには、下記のように build
します
ng build --configuration=staging
(ng serveなども同様)