在Angular 6中不再可以指定env
在使用Angular开发时,当需要准备除了开发和生产环境之外的其他环境时,下面的命令非常方便。
ng build --prod -e=staging
ng build --prod --env=staging
这个在Angular6中无法使用了。
使用之后, (Tsu ka u to)
Unknown option: '--env'
被训斥了。
在Angular 6中,我们使用configuration来指定,而不是使用env。
然而,在此之前,需要进行一些准备工作。
需要更改Angular6中的以下部分。
"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
},
}
在这里,我们向配置中添加了staging。
为了方便在Angular 6中修改src/environments目录下的配置之外的内容,我们将环境(environment)改为了配置(configuration)。
要应用此设置,请按照以下方式进行构建。
ng build --configuration=staging
(例如ng serve),同样的方式。