Angular 构建系统
npm包管理器
Angular框架、Angular CLI、Angular应用程序所用到的组件都打包成npm packages,并通过npm registry进行分发。
npm安装的包都会在package.json中,package.json文件中的包被分为了两组:dependencies是运行应用的基础,devDependencies 只有在开发应用的时候才会用到,不需要部署到生产环境中。
package.json中的dependencies区包括:
- Angular包: Angular的核心和可选模块,包名以@angular/开头;
- 支持包:那些Angular应用运行时必须的第三方库;
- pollyfill脚本:负责兼容不同浏览器JavaScript实现之间的差异;
Angular CLI
Angular CLI是一个命令行界面工具,可用于初始化、开发、构建和维护Angular应用。可通过ng可执行文件在命令行上调用此工具。Angular CLI的build、serve和test命令可以为不同的目标环境,把文件替换成合适的版本。
项目配置文件
每个工作空间中的所有项目共享同一个CLI配置环境,包含全项目工作空间级的配置文件、根应用的配置文件以及一些包含根应用的源文件和测试文件的子文件夹。
工作空间配置文件 | 用途 |
---|---|
.editorconfig | 代码编辑器的配置 |
README.md | 根应用的简介文档 |
angular.json | 为工作区中的所有项目指定CLI的默认配置,包括CLI要用到的构建、启动开发服务器和测试工具的配置项,比如TSLint,Karma和Protractor。欲知详情,请参阅Angular工作空间配置部分。 |
package.json | 配置工作空间中所有项目可用的npm包依赖。有关此文件的具体格式和内容,请参阅npm的文档。 |
package-lock.json | 提供npm客户端安装到node_modules的所有软件包的版本信息。欲知详情,请参阅npm的文档。如果你使用的是yarn客户端,那么该文件就是yarn.lock。 |
tsconfig.json | 工作空间中各个项目的默认TypeScript配置。 |
tslint.json | 工作空间中各个项目的默认TSLint配置。 |