作者 | Stephen Fluin
译者 | 王强
策划 | 李俊辰
Angular v10.0.0 正式发布了!这是跨越整个平台(包括框架、Angular Material 和 CLI)的一次主要版本更新。这次的新版发布间隔比以往短一些。自我们发布 Angular 9.0 版以来只过去了四个月。
我们尝试每年发布两个主要版本,以使 Angular 与其他 JavaScript 生态系统保持同步,并给出可预测的时间表。我们计划在今年秋天发布 v11 版。新版内容新的日期范围选择器Angular Material 现在提供了一个新的日期范围选择器。新的日期范围选择器可以通过 mat-date-range-input 和 mat-date-range-picker 组件使用它。请参阅 StackBlitz 上的这个示例:https://stackblitz.com/angular/nknyovevygv?file=src%2Fapp%2Fdate-range-picker-overview-example.html更多细节请查阅 date range selection:https://next.material.angular.io/components/datepicker/overview#date-range-selection关于 CommonJS 导入的警告当用户使用 CommonJS 打包的依赖项时,它可能导致应用程序膨胀且变慢。https://web.dev/commonjs-larger-bundles/从 v10 开始,当你的构建引入这种包时就会看到警告。如果你处理依赖项时看到了这类警告,请将依赖项替换为 ECMAScript 模块(ESM)包。CommonJS 或 AMD 依赖项可能导致优化 bailout可选的更严格设置当你使用 ng new 创建新的工作区时,v10 提供了一个更严格的项目设置选项。ng new --strict
启用此标志会使用一些新设置初始化你的新项目,这些设置可以提高可维护性,帮助你提前捕获错误并允许 CLI 在你的应用上执行一些高级优化措施。具体来说,strict 标志执行以下操作:-
在 TypeScript 中启用严格模式;
-
将模板类型检查设置为 Strict;
-
将默认包预算减少约 75%;
-
配置 linting 规则以防止声明 any 类型;
-
https://palantir.github.io/tslint/rules/no-any/
-
-
将你的应用配置为 side-effect-free,以实现更高级的 tree-shaking 优化。
-
TypeScript 升至 TypeScript 3.9
-
TSLib 已更新至 v2.0
-
TSLint 已更新至 v6