Angular 8 - 有什么新功能?

Angular 社区不断更新其版本。 本章介绍 Angular 9 版本更新。

安装 Angular 9

如果您想使用 Angular 9,首先需要使用以下命令设置 Angular 9 CLI:

npm install -g @angular/cli@^9.0.0 

执行此命令后,您可以使用以下命令检查版本:

ng version 

Angular 9 更新

让我们简单了解一下 Angular 9 的更新。

ivy编译器

Ivy 编译器成为 Angular 9 中的默认编译器。这使得应用程序将变得更快且非常高效。 而 Angular 8 Ivy 是可选的。 我们必须在 tsconfig.json 文件中启用它。

ivy编译器支持以下功能:

  • 执行更快的测试 − TestBed 实施有助于提高测试效率。

  • 改进了 CSS 类和样式 − Ivy 风格很容易合并,并且设计得可预测。

  • 改进的类型检查 − 此功能有助于在开发过程中尽早发现错误。

  • 增强调试 − Ivy 附带了更多工具来实现更好的调试功能。 这将有助于显示有用的堆栈跟踪,以便我们可以轻松跳转到指令。

  • 提前编译器 − 这是编译器性能的重要改进之一。 AOT 构建速度非常快。 改进的国际化 - i18n 替换有助于构建速度比以前的版本快十倍以上。

可靠的 ng 更新

ng 更新非常可靠。 它包含明确的进度更新并运行所有迁移。 这可以使用以下命令来完成:

ng update --create-commits

这里,

–create-commits 标志用于在每次迁移后提交代码。

改进的依赖注入

@Injectable 服务有助于在您的应用程序中添加注入器。 providedIn元数据提供了新的选项,platform以确保对象可以被所有应用程序使用和共享。 它的定义如下:

@Injectable({
   providedIn: 'platform'
}) 
class MyService {...} 

TypeScript 3.8

Angular 9 旨在支持 3.8 版本。 TypeScript 3.8 支持以下功能:

  • 仅类型导入和导出。
  • ECMAScript 私有字段。
  • Top-Level 顶级等待。
  • JSDoc 属性修饰符。
  • 将 * 导出为 ns 语法。

Angular 9.0.0-next.5

Angular 9.0.0-next.5 版本的 main.js 文件较小,与之前版本的 Angular 8 相比,性能更好。

IDE 增强

Angular 9 提供了改进的 IDE 支持。 TextMate 语法支持在内联和外部模板中突出显示语法。

结论

Angular 是灵活的、不断改进的、持续更新的、可靠的框架。 Angular 极大地简化了 SPA 开发的过程。 通过在每个版本中提供新功能,例如 Angular Universal、Progressive Web App、Web Workers、Bazel build、Ivy Compiler 等,Angular 将获得前端开发人员的长期生命周期和完整支持。