angular-cli: 默认使用 ng serve 进行 AoT 编译

angular-cli: AoT compilation with ng serve by default

在 Angular CLI 中,ng serve 使用 JiT 并且需要标志 --aot 才能使用 AoT 编译。

是否可以让 ng serve 默认使用 AoT 而仅在传递 --aot=false 标志时才使用 JIT?

不是直接回答您的问题,而是实现相同结果的另一种方法。在您的 package.json 文件中,您可以添加一个使用 AoT 编译的自定义脚本。

...
"scripts": {
    "aot": "ng serve --aot"
  },
...

然后你可以运行命令npm aot

编辑:从angular9开始,开发环境默认开启aot编译(see documentation)

在 angular 6 中,您可以为 serve 目标指定默认选项,因此您可以在该部分添加 aot: true,默认情况下 ng serve 将使用 aot

"serve": {
      "builder": "@angular-devkit/build-angular:dev-server",
      "options": {
        "browserTarget": "project:build",
        "aot": true
      },
      "configurations": {