在2022年4月8号微软发布的 TypeScript 4.7 RC 版本中提供了对 Node.js 16 的 ECMAScript 模块 (ESM) 支持以及新的编程语法,新的关键字,新的 Compiler Options,类型推导增强等功能。
RC版本于5月11号发布,而TypeScript 4.7 版本是微软的最新计划版本。Node.js 中对 ESM 的支持主要是在 Node.js 12 及更高版本中实现的, 在TypeScript 4.5前后, 已经对ESM进行了有限的支持,以从用户那里获得一些反馈,并让库作者为更广泛的支持做好准备。
但是,由于不再支持 Node.js 12,TypeScript 的构建者已经在 Node.js 16 上启动了稳定的目标,它应该提供更新的 ES 模块功能,例如 pattern trailers,同时还将 TypeScript 默认设置为支持顶级的更高目标
在 TypeScript 4.5 前后的版本中对 Node.js 中 ECMAScript 模块的支持有限。这些模块可以通过打包重用代码。但是实现这种支持很困难,因为 Node.js 构建在不同的模块系统 CommonJS 之上。module
TypeScript 4.7 通过两个设置添加了此功能, node12
并且nodenext
. 寻求有关此功能的反馈,可以在GitHub 上提供。
TypeScript 4.7版本将于 5 月 24 日正式发布。目前可以通过 NuGet 或 NPM 访问 RC:
npm install typescript@rc
TypeScript 4.7 版本中的其他功能还包括:
在 Beta 版之后,TypeScript 的构建者发现已计划发布的字段typeof
功能存在 API 兼容性问题。#private
团队也开始怀疑是否typeof this.#somePrivate
在声明 Emit 上编写得很好。因此,TypeScript 4.7 中忽略了此功能。