Node.js 正式发布 Amaro 1.0:原生 TypeScript 支持迎来重大突破

2,584 阅读2分钟

TypeScript 支持痛点终获解决

6月10日,Node.js 官方团队发布了 Amaro 1.0,这一里程碑式的工具标志着 Node.js 对 TypeScript 的原生支持终于走向稳定。长期以来,尽管 TypeScript 在前端开发领域已成为提升代码质量的主流选择,Node.js 生态对其支持却始终滞后,迫使开发者依赖第三方工具链。

历史性转折:从实验性功能到稳定支持

Node.js 团队对 TypeScript 的支持经历了几个关键阶段:

  • 2024年6月:Node v22.6 引入 --experimental-strip-types 标志,首次实现对简单 TypeScript 文件类型注释的移除

  • 2024年7月:Node v22.7 加入 --experimental-transform-types 标志,支持 enum、namespace 等复杂语法

  • 2025年3月:Node v23.6 默认开启类型剥除功能,无需额外参数即可直接运行 .ts 文件

Amaro 1.0 核心技术解析

作为用 Rust 编写并通过 WebAssembly 在 Node.js 中运行的类型剥除加载器,Amaro 1.0 具有以下突出特性:

  1. 卓越性能:基于 SWC 引擎实现极速运行,资源占用极小

  2. 双模式支持

    • strip-types:仅移除类型注释,保留原语法结构

    • transform-types:处理复杂语法转换如枚举和命名空间

  3. 完整生态支持:可处理 node_modules 中的 .ts 文件,完美适配 monorepo 项目

  4. 独立更新机制:作为独立模块存在,更新周期不受 Node.js 版本限制

三大运行时 TypeScript 支持对比

未来展望

Amaro 1.0 的发布标志着 Node.js 生态向 TypeScript 友好型环境迈出了决定性一步。随着这一工具的普及,开发者将能够:

  • 彻底摆脱繁琐的编译步骤,直接运行 TypeScript 代码

  • 享受更快的开发启动速度和更简洁的调试流程

  • 在保持现有 Node.js 生态完整性的同时获得 TypeScript 的类型安全优势

这一突破性进展预示着 JavaScript 和 TypeScript 在 Node.js 环境中的界限将逐渐模糊,为全栈开发者带来更加统一、高效的开发体验。