
3 月 8 日妇女节,来一场职场姐妹茶话会!欢迎加入群聊

TypeScript 5.8 已正式发布。
主要变化如下:
- 条件和索引访问类型的返回检查:增强函数返回类型的检查,确保条件类型和索引访问类型的分支明确,减少运行时错误。
- 支持在 --module nodenext 下使用 require() 加载 ECMAScript 模块:允许 CommonJS 文件通过 require() 加载 ESM 文件,适用于 Node.js 22+。
- --module node18 标志稳定:提供稳定的模块解析行为,禁用 require() ESM 并支持导入断言(已弃用,推荐使用导入属性)。
- 新增 --erasableSyntaxOnly 选项:确保只使用可擦除的语法(如 enum、namespace 不含运行时代码),与 Node.js 23.6+ 的 --experimental-strip-types 兼容。
- 新增 --libReplacement 标志:允许禁用默认 lib 文件替换,提供更多自定义选项。
- 声明文件中保留计算属性名:确保计算属性名在声明文件中一致,可能影响索引签名和隔离声明。
- 程序加载和更新的优化:改进路径规范化、缓存选项验证,提升大项目和 --watch 模式的性能。
- 导入断言限制:在 --module nodenext 中,使用 with 替代 assert。
- lib.d.ts 更新:可能影响 DOM 类型检查。
详情查看发布公告。
还没有评论,来说两句吧...