Angular 7 版本

Angular 7 版本

这是跨整个平台的主要版本,更新包括核心框架,Angular Material和CLI。

如何更新到v7

可以访问update.angular.io以获取有关更新应用程序的详细信息和指导。
其中大多数应用只需要执行以下命令:

ng update @angular/cli @angular/core

CLI提示

现在,CLI将在运行常用命令时提示用户,ng new或者ng add @angular/material帮助您发现路由或SCSS支持等内置功能。
CLI提示已添加到Schematics中,因此任何包发布Schematics都可以通过向x-prompt来利用它们,例如

"routing": {
  "type": "boolean",
  "description": "Generates a routing module.",
  "default": false,
  "x-prompt": "Would you like to add Angular routing?"
},

应用性能

reflect-metadata

我们继续关注绩效,分析了整个生态系统中的常见错误。我们发现许多开发人员将reflect-metadata包包括在生产中,实际上这只是在开发中需要的。
为了解决此问题,v7的部分更新将自动从polyfills.ts文件中删除它,然后在JIT模式下构建应用程序时将其作为构建步骤包含在内,默认情况下从生成版本中删除。

压缩包大小

使用v7,我们还默认新项目在CLI中利用压缩包大小管理。当初始捆绑包超过2MB并且错误为5MB时,新应用程序将发出警告。如果想修改默认大小的话可以在angular.json管理

"budgets": [{
  "type": "initial",
  "maximumWarning": "2mb",
  "maximumError": "5mb"
}]

Angular Material & the CDK

  1. 现在可以通过导入DragDropModuleScrollingModule实现虚拟滚动和拖拽。
  2. 通过在mat-form-field内部使用select来改进应用程序的可访问性。

Angular Elements

Angular Elements现在支持使用自定义元素的Web标准进行内容投影。

<my-custom-element>This content can be projected!</my-custom-element>

文档更新

我们一直在努力改进我们的指南和参考资料。angular.io上的文档现在包含Angular CLI的参考资料。

依赖更新

我们更新了对主要第三方项目的依赖关系。

  1. TypeScript 3.1
  2. RxJS 6.3
  3. Node 10  我们已经添加了对Node 10的支持,我们仍然支持8
posted @ 2019-02-26 19:32  S&L·chuck  阅读(1407)  评论(0编辑  收藏  举报