首页 > 解决方案 > 在我使用“prod”标志构建后,Angular 应用程序没有被丑化

问题描述

我正在运行 Angular 7。我的production构建设置包含键optimization=truebuildOptimizer=true. 我将在底部包含我的文件的一大块完整production配置部分。angular.json

我正在 AWS Amplify 上运行自动构建。我还将在底部包含构建配置,但本质上它运行npm run build --prod

问题是构建成功后,我可以导航到我的网络应用程序,仍然可以看到所有未修改的源代码(通过转到 Chrome 开发人员控制台并查看目录内容webpack)。无法确定我做错了什么。

angular.json

"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,
  "budgets": [
    {
      "type": "initial",
      "maximumWarning": "2mb",
      "maximumError": "5mb"
    }
  ],
  "serviceWorker": true
}

构建脚本:

version: 0.1
frontend:
  phases:
    preBuild:
      commands:
        - npm ci
    build:
      commands:
        - npm run build --prod
  artifacts:
    baseDirectory: dist/myprojectname
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

标签: angularamazon-web-servicesnpmweb-applicationsaws-amplify

解决方案


为什么不使用 Angular-CLI?

只需命令

ng build --prod

我认为您的“npm run build --prod”是自定义命令。所以,prod 标志是未定义的。不是吗?


推荐阅读