Angular 10正式版发布,不再默认支持ES5

前端网页程序开发框架Angular发布最新第10主要发布版本,这个版本更新了一些组件以及配置,包括新的日期范围选择器,并且也使用了新的默认浏览器配置,加入限制更严谨的严格模式。官方提到,这个版本的更新比以往典型的主要发布版本都还要少,因为离Angular 9.0发布只有4个月的时间,而他们每年都要发布4个主要版本,因此计划在11月将会发布Angular 11。

由于使用CommonJS打包相依项目可能使应用程序变慢,所以从Angular 10开始,当开发者在构建时加入这些打包的组件,系统会发出警告,官方提到,当开发者使用的相依项目开始出现警示,建议可以选用ECMAScript模块(ESM)的软件包。

而当开发者使用–strict标签来创建严格模式项目时,Angular 10现在提供更严格的项目配置,以改善项目的可维护性,而且除了开发者能够更简单地捕捉错误之外,也让CLI可以对应用程序执行高端优化。

具体来说,现在使用–strict标签,会在TypeScript中激活严格模式,且同时激活严格模板检查,默认打包容量预算将会降低75%,且Linting规则将会避免程序出现any类型,而严格模式的应用程序,也将能使用更高级的树摇优化功能。

官方在Angular 10中使用了新的浏览器默认配置,排除较旧和较少使用的浏览器,如此新项目将不支持ES5,而需要构建能够在IE上执行的ES5应用程序时,开发者只要在配置文件添加要支持的浏览器型号,便可激活ES5构建,以及差分加载功能。

Angular组件格式不再包含ESM5或FESM5软件包,如此开发者在yarn或是npm下载Angular组件以及函数库,将可少掉119 MB,官方解释,即便需要降级支持ES5,也不会需要ESM5或FESM5,因为会在程序构建结束的时候处理,另外,他们与社群协商后,决定不再支持IE 9、10和Internet Explorer Mobile浏览器。

Angular 10更新了相依项目,TypeScript使用TypeScript 3.9,而TSLib则升级使用2.0,TSLint更新到第6版。官方还更新了项目布局,Angular 10加入了一个新的配置档tsconfig.base.json,能够更好地支持IDE和构建工具解析类型和组件配置。