Angular 8 - 向后兼容性

Angular 框架提供了与以前版本的最大兼容性。 如果 Angular 团队弃用某个版本中的某个功能,它将等待另外 3 个版本才能完全删除该功能。 Angular 团队每六个月发布一个主要版本。 每个版本都有六个月的主动维护期,然后再有一年的长期支持(LTS)期。 在这 18 个月内,Angular 没有引入重大变更。 如果 Angular 版本弃用了版本 5 中的某个功能,那么它可能会在版本 8 或下一个版本中删除它。

Angular 维护所有版本的文档和指南。 例如,可以检查版本 7 的 Angular 文档 @ https://v7.angular.io。 Angular 还通过 https://update.angular.io/ 站点提供了详细的升级路径。

要更新从以前版本编写的 Angular 应用程序,请在项目目录中使用以下命令:

ng update @angular/cli@8 @angular/core@8

让我们看看 Angular 8 中引入的一些重要变化。

  • HttpModule 模块及其关联的 Http 服务已删除。 使用 HttpClientModule 模块中的 HttpClient 服务。

  • /deep/,>>>:ng-deep 组件选择器已被删除。

  • TypeScript 的 Angular 默认版本是 3.4。

  • Angular 支持的 Node 版本为 v10 及更高版本。

  • @ViewChild()ContentChild() 装饰器行为从动态更改为静态。

路由器模块中的延迟加载字符串语法已被删除,并且仅支持基于函数的。

loadChildren: './lazy/lazy.module#LazyModule' 
loadChildren: () => import('./lazy/lazy.module'