如何创建自定义的ng build --qa Angular 5.2

时间:2018-10-01 01:30:13

标签: angular

我想创建ng build --qa,在其中拾取environment.qa.ts并执行AOT,捆绑和Dead代码消除,但不进行Minification和Uglification

我将如何在Angular 5.2中做到这一点

4 个答案:

答案 0 :(得分:1)

在angular6中,我们的操作如下:

  1. 在环境文件夹中创建自己的environment.qa.ts文件。在哪里可以编辑 详细信息,或者您可以添加更多详细信息,例如质量保证环境的URL:

    export const environment = {
      production: false,
      URL:'http://something:8200'
    }
    
  2. 现在在angular.json中,您将必须在配置中添加 qa 配置,并且还需要在此提及文件替换。

    “配置”:{

            "qa": {
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.qa.ts"
                }
              ],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true
            }
          }
    

    要由您决定,如果要buildOptimizer,优化以及所有操作都可以在qa构建中完成,则可以使用这些值为true,也可以删除这些选项。

    3。最后,使用此命令 ng build --configuration = qa

  3. 运行构建

答案 1 :(得分:0)

如果要执行angular6,则需要将environment.qa.ts添加到angular.json配置中。

buildconfiguration部分中都这样做之后,只需运行ng build --configuration=qa

答案 2 :(得分:0)

对于angular 5版本,您只需要创建环境文件即可,例如:

/src/environments/environment.prod.ts
                  environment.qa.ts
                  environment.ts

然后在angular.cli.json中添加

{
 ...
 app [
 {
  ...
  "environments": {
    "dev": "environments/environment.ts",
    "prod": "environments/environment.prod.ts",
    "qa": "environments/environment.qa.ts"
  }

从控制台中,您只需执行以下命令:

ng build --env=qa

您可以进行测试,看看在这种情况下获取的值是环境中的值。qa.ts

答案 3 :(得分:0)

environments 文件夹中创建 environment.qa.ts enter image description here

然后转到angular.json文件,然后 在配置选项下,将质量检查的配置添加为

"qa": {
              "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.qa.ts"
                }
              ]
            },

So the overall code will look like

然后转到 package.json 并添加如下脚本部分

"scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build --prod --aot --build-optimizer",
    "build:prod": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --c prod --build-optimizer --aot",
    "build:qa": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --c qa --build-optimizer --aot",
    "build:dev": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --c dev --build-optimizer --aot",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },

然后您可以对{a}运行npm run build:qa,对dev运行npm run build:dev,对prod运行npm run build:prod