Angular应用的angular.json文件字段一览

496 阅读1分钟

$schema

JSON Schema 是一个允许我们注解和验证JSON数据格式的工具。

我们可以在任何使用Angular cli创建的Angular应用的node_module对应路径下找到这个schema.json文件:C:\Code\SPA\sandbox\node_modules@angular\cli\lib\config\schema.json

比如我们编辑angular.json文件时,有些字段比如cli.packageManager为什么可以出现自动完成的提示:

是因为所有这些可选项都定义在schema.json文件里了:

又比如projecttype字段,有且只有application和library两种。

projects

sandbox就是我的应用名称,也是Angular应用的根目录名称。

schematics

指定该应用从Component层级统一使用scss作为style技术:

architect

ng serve的含义也能在schema.json里查到:Compile and Serve the app.

ng serve指向的目标是sandbox:build, 使用的builder为@angular-devkit/build-angular:dev-server:

做个试验,如果我把browserTarget改成sandbox:build2,

会报错:

An unhandled exception occurred: Invalid target: {“project”:“sandbox”,“target”:“build2”}.
See “C:\Users\I042416\AppData\Local\Temp\ng-dOBpdq\angular-errors.log” for further details.

除非把architect下的build也跟着改成build2才行:

这是我design time时的index.html文件,里面没有script标签页:

ng serve之后,打开的localhost里取回的html,里面多了很多script标签:

要获取更多Jerry的原创文章,请关注公众号"汪子熙":