如果在运行应用程序之前 Typescript 需要编译,那么在 Angular 中设置 "aot" = false 是什么意思?

问题描述

在我们的 angular.json(Angular 9 应用程序)配置中,我们有

    "build": {
      "builder": "@angular-devkit/build-angular:browser","options": {
        "outputPath": "dist/medicalapp","index": "src/index.html","main": "src/main.ts","tsConfig": "tsconfig.app.json","aot": true,

就 Angular 在 Typescript 而言,它需要在应用程序运行之前进行编译,“aot”设置为“false”有什么作用?这是否意味着如果您在应用运行时编辑 .ts 文件,它不会重新编译,您必须重新启动应用本身?

解决方法

如果设置为 false 则表示应用程序将使用 JIT 编译构建

根据文档

即时 (JIT),它在运行时在浏览器中编译您的应用。

含义:

它不会创建最小化包,因此您可以直接访问文件。您将可以直接调试和添加括号到您的代码中。因此,在生产过程中,每个人都可以通过代码。

AOT 将最大限度地减少您的代码,并将提供 AOT 的所有优点,如速度、最小的包大小、防止复制粘贴、独特的哈希等。

回答你的问题 AOT false 将首先创建将从 TS 文件编译的包,浏览器每次重新加载都会将文件解释为可读格式,AOT 会在编译步骤中完成

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...