【问题标题】:When I have updated the angular version 7.0 -> 8.0. Does not changed the target on tsconfig.json file当我更新了角度版本 7.0 -> 8.0。不更改 tsconfig.json 文件上的目标
【发布时间】:2019-06-04 05:18:18
【问题描述】:

我已经使用该命令更新了 angular 8 版本 ng 更新 @angular/cli @angular/core 使用该命令的角度版本更新如下:-

Angular CLI: 8.0.1
Node: 10.15.3
OS: linux x64
Angular: 8.0.0
... animations, cdk, common, compiler, compiler-cli, core, forms
... language-service, material, platform-browser
... platform-browser-dynamic, platform-server, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.800.1
@angular-devkit/build-angular     0.800.1
@angular-devkit/build-optimizer   0.800.1
@angular-devkit/build-webpack     0.800.1
@angular-devkit/core              8.0.1
@angular-devkit/schematics        8.0.1
@angular/cli                      8.0.1
@angular/fire                     5.2.1
@angular/flex-layout              8.0.0-beta.26
@angular/http                     7.2.15
@ngtools/webpack                  8.0.1
@schematics/angular               8.0.1
@schematics/update                0.800.1
rxjs                              6.5.2
typescript                        3.4.5
webpack                           4.30.0

但 CLI 的构建命令不会自动创建具有最少 polyfill 的现代 ES2015 构建,并且不会在 tsconfig.json 文件上进行更改。我已经使用该网址更新了角度版本https://update.angular.io/#7.0:8.0

当我创建了块文件但与 es2015 相关的构建时,不会创建任何文件

Date: 2019-06-04T05:03:53.665Z
Hash: 6cc5c731be9c350393c9
Time: 48841ms
chunk {main} main.js, main.js.map (main) 683 bytes [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 145 kB [initial] [rendered]
chunk {polyfills-es5} polyfills-es5.js, polyfills-es5.js.map (polyfills-es5) 462 kB [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 6.08 kB [entry] [rendered]
chunk {scripts} scripts.js, scripts.js.map (scripts) 480 kB [entry] [rendered]
chunk {styles} styles.js, styles.js.map (styles) 1.91 MB [initial] [rendered]

CLI 的构建命令现在会自动创建一个现代 ES2015 构建,使用最少的 polyfill 和一个兼容旧浏览器的 ES5 构建,并根据浏览器加载适当的文件。您可以通过在 tsconfig.json 中将目标设置回 es5 来选择退出此更改。

【问题讨论】:

  • 无法理解!你究竟在寻找/期待什么?
  • 在 Angular 8 中,不会自动创建具有最少 polyfill 的现代 ES2015 构建。
  • 你能给我指点文件吗?
  • 这并不是你写它的真正期望。你运行migration scripts 还是失败了?你能分享一些你终端的结果吗?您可以运行ng update @angular/core --from 7 --to 8 --migrate-only 来触发迁移脚本。
  • 抱歉,我不明白如何解释我们的问题。

标签: angular


【解决方案1】:

如果要创建“polyfills-es5”JS,必须在设置中将“es5BrowserSupport”选项设置为“true”。

这是我的设置文件。

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "flows-frontend": {
      "root": "",
      "sourceRoot": "src",
      "projectType": "application",
      "prefix": "",
      "schematics": {},
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "target/classes/resource",
            "index": "src/index.html",
            "main": "src/main.ts",
            "polyfills": "src/polyfills.ts",
            "tsConfig": "src/tsconfig.app.json",
            "assets": [
              "src/favicon.ico",
              "src/assets"
            ],
            "styles": [
              "src/styles.css",
              "src/lib/vis/vis.css",
              "node_modules/slickgrid/slick.grid.css",
              "src/assets/slickgrid/plugins/headermenu/slick.flow.headermenu.css",
              "src/assets/slickgrid/slick.grid.override.css"
            ],
            "scripts": [
              "node_modules/jquery/dist/jquery.min.js",
              "node_modules/slickgrid/slick.core.js",
              "node_modules/slickgrid/lib/jquery-ui-1.11.3.min.js",
              "node_modules/slickgrid/lib/jquery.event.drag-2.3.0.js",
              "node_modules/slickgrid/lib/jquery.event.drop-2.3.0.js",
              "node_modules/slickgrid/slick.grid.js",
              "node_modules/slickgrid/slick.dataview.js",
              "node_modules/slickgrid/plugins/slick.cellexternalcopymanager.js",
              "node_modules/slickgrid/plugins/slick.sizetocontent.js",
              "node_modules/slickgrid/slick.formatters.js",
              "node_modules/slickgrid/plugins/slick.cellselectionmodel.js",
              "node_modules/slickgrid/plugins/slick.rowselectionmodel.js",
              "node_modules/slickgrid/plugins/slick.autotooltips.js",
              "node_modules/slickgrid/plugins/slick.cellrangedecorator.js",
              "node_modules/slickgrid/plugins/slick.cellrangeselector.js",
              "node_modules/slickgrid/plugins/slick.cellselectionmodel.js",
              "node_modules/slickgrid/plugins/slick.cellexternalcopymanager.js",
              "src/lib/slickgrid/plugins/headermenu/slick.flow.headermenu.js",
              "src/lib/moment/moment.min.js",
              "src/lib/moment/moment-timezone-with-data.min.js",
              "src/lib/toastr/toastr.js",
              "src/lib/async/async.js",
              "src/lib/vis/vis.js",
              "src/lib/split/split.js",
              "src/lib/d3/d3.min.js"
            ],
            "es5BrowserSupport": true
          },
          "configurations": {
            "production": {
              "fileReplacements": [
                {
                  "replace": "src/environments/environment.ts",
                  "with": "src/environments/environment.prod.ts"
                }
              ],
              "statsJson": true,
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "baseHref": "/app/v2/",
              "deployUrl": "/app/v2/",
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "progress": true,
              "buildOptimizer": true,
              "deleteOutputPath": true,
              "budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "2mb",
                  "maximumError": "5mb"
                }
              ]
            }
          }
        },
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
            "browserTarget": "flows-frontend:build",
            "hmr": false,
            "hmrWarning": false,
            "aot": true,
            "proxyConfig": "proxy.conf.js",
            "host": "0.0.0.0",
            "disableHostCheck": true,
            "liveReload": false
          },
          "configurations": {
            "production": {
              "browserTarget": "flows-frontend:build:production"
            }
          }
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "flows-frontend:build"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/test.ts",
            "polyfills": "src/polyfills.ts",
            "tsConfig": "src/tsconfig.spec.json",
            "karmaConfig": "src/karma.conf.js",
            "styles": [
              "src/styles.css"
            ],
            "scripts": [],
            "assets": [
              "src/favicon.ico",
              "src/assets"
            ]
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.app.json",
              "src/tsconfig.spec.json"
            ],
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    },
    "flows-frontend-e2e": {
      "root": "e2e/",
      "projectType": "application",
      "prefix": "",
      "architect": {
        "e2e": {
          "builder": "@angular-devkit/build-angular:protractor",
          "options": {
            "protractorConfig": "e2e/protractor.conf.js",
            "devServerTarget": "flows-frontend:serve"
          },
          "configurations": {
            "production": {
              "devServerTarget": "flows-frontend:serve:production"
            }
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": "e2e/tsconfig.e2e.json",
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    }
  },
  "defaultProject": "flows-frontend"
}

你得到你想要的答案了吗?

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-06-16
  • 1970-01-01
  • 2022-12-15
  • 2021-11-30
  • 2020-01-21
  • 2017-11-29
  • 2022-01-21
相关资源
最近更新 更多