主要观点:可通过设置实验标志--experimental-strip-types
来执行 TypeScript 文件,Node.js 会将 TypeScript 源代码转译为 JavaScript 源代码,转译过程中不进行类型检查且丢弃类型。
关键信息:
- 有相关 roadmap 参考nodejs/loaders#217。
- 推动生态前进需让用户能执行 TypeScript 文件,这在所有调查中都有被请求。
- 类型剥离即去除所有类型,将输入转为 JavaScript 模块,如
const foo: string = "foo";
变为const foo = "foo";
。 - 其他运行时也会将某些仅 TypeScript 特性转译为 JavaScript,如枚举(在 JavaScript 中不存在)。
- 此 PR 初始不进行转换,意味着不能使用
Enum
、namespaces
等。 - 选择
@swc/wasm-typescript
是因为简单,无需添加 rust 或 go 到工具链,是个小包裹且经 Deno 测试,未来有望在原生层实现,感谢[@kdy1]发布 swc 版本。
重要细节:具体实现细节和限制可参考typescript.md
中的 PR 更改。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。