Angular CLI是用于构建 Angular 应用程序的命令行界面,去年它已成为 Angular 开发人员工具箱中最重要的工具之一。
CLI 负责自动化解决 2017 年开发人员面临的许多挑战和头痛。从开箱即用的配置开始,融入社区随着时间的推移发现的最佳实践,并通过CLI 帮助您构建更易于维护的代码,以一种更容易入门的方式公开了 Angular 的一些最强大的功能,并且与您自己将所有内容组合在一起更容易快速移动。
如果您现在没有使用 CLI,也可以很容易上手。假设您安装了 Node 和 npm ,您可以运行这四个命令来快速启动并运行 Angular 和 CLI。
npm install —g @angular/cli
ng new my-angular-project
cd my-angular-project
ng serve
Angular CLI 在过去几个月中取得了很大进展,您可以在发布页面上查看有关此进展的综合说明,但回顾过去 4 个月中发生的事情可能会有所帮助。
最小标志允许开发人员生成更小、更简单的默认项目。使用此标志生成的项目与默认设置略有不同:
当您使用 Angular 的延迟加载时,我们将生成一组文件,仅当用户请求的给定路由需要时,Angular 路由器才会加载这些文件。
在进行生产构建时,这些最终会在构建过程中按数字顺序命名。
0.46af283b5453c1d30d30.chunk.js
1.2b2a029972b8935a384a.chunk.js
现在,有了命名包,我们将在构建过程中使用模块名称作为提示,以帮助调试非生产构建。
admin.module.chunk.js
home.module.chunk.js
Angular 和许多第三方项目通常拥有数百个带有许可证的单独文件。从历史上看,我们的 CLI 通过将这些许可证串联起来作为捆绑过程的一部分来帮助开发人员保持合规性。
现在,为了使捆绑包尽可能小,我们将这些许可证提取到单独的3rdpartylicenses.txt
文件中,并删除任何重复的许可证。
Bundle size improvements 捆绑包大小改进
对于每个版本,我们都努力提高 CLI 在生产版本中生成的代码的质量。在此版本中,我们将利用 Webpack 3 的最新功能,包括范围提升。
我们还提供了一个新工具的测试版,我们正在开发该工具,以帮助删除您不依赖的代码,称为我们的构建优化器。您可以尝试使用此标志:
ng build --prod --build-optimizer
从我们自己在angular.io上的工作来看,我们发现生产版本的大小减少了 52%。
服务器端渲染是提高应用程序感知性能的好方法,并使您的应用程序更好地适应 Twitter 或 Facebook 等爬虫程序,这些爬虫程序会在用户尝试共享您的内容时抓取您的网站。
Angular Universal 随 Angular v4 一起发布,包含在服务器上渲染 Angular 应用程序所需的所有底层 API。 CLI 中的通用支持允许您通过.angular-cli.json
配置创建第二个 CLI 应用程序,该配置包装您的主应用程序,并为您提供生成server
包的选项,从而使这变得更容易。
在 wiki 上了解有关设置 Angular CLI 项目以生成server
优化包的更多信息:https://github.com/angular/angular-cli
Angular 大约每 6 个月发布一次主要版本。因为团队所做的一切都是开源的,所以新的 Angular 版本通常在 Beta 过程的早期没有很多功能,但尝试它们可能很有趣,并且团队希望从早期采用者那里获得反馈。
通过尝试和测试即将发布的 Angular 版本,希望您可以尝试一下并让我们知道您的想法。 Angular 5.0.0 版本将需要更高版本的 CLI。
Schematics 原理图
CLI 团队的主要项目之一是创建Schematics 。原理图允许您运行任意代码来执行树转换,作为自动编写代码和生成文件的一种方式。这些功能可让您为特定于您的风格或公司的ng new
或ng generate
构建自己的模板,在我们为您提供的模板上构建,或者您可以执行更高级的操作,例如根据 a 的形状和响应生成代码。远程API。
原理图正在不断发展并开始被记录下来。为了证明用例并验证 Schematics 的技术基础,1.4 是第一个自动使用新原理图系统的 CLI 版本。
CLI 团队有很多计划来让开发人员的生活变得更加轻松。以下是团队希望(但不承诺)包含在未来版本中的一些想法:
ng update
——Angular 定期发布补丁、次要版本和主要版本。 CLI 可以帮助您保持最新状态。 Angular 团队一直致力于开发 Material 和国际化工具,以帮助自动化更新过程,为您处理重大更改,而 CLI 将是展示这些工具的好地方。世界各地的 Angular 开发人员都选择 CLI 作为构建 Angular 应用程序的最简单方法。在新项目或现有项目中尝试 CLI,并告诉我们它是否对您有帮助,或者您是否还想查看更多内容!
原文链接:https://blog.angular.dev/the-past-present-and-future-of-the-angular-cli-13cf55e455f8