Node.js 合并了为 TypeScript 添加实验性支持的 PR。
根据 PR 的描述,
开发者只需在 Node.js 中配置实验性 flag
--experimental-strip-types
就可以执行 TypeScript 文件
。
Node.js 会将 TypeScript 代码自动转译为 JavaScript 代码。在转译过程中,不会执行类型检查,类型会被丢弃 ——Node.js 团队称之为
"type stripping"(类型剥离)
。
类型剥离意味着删除所有
types
,并转换为 JavaScript 模块中的输入。
const foo: string = "foo";
-
无法对枚举、命名空间等类型进行转换
-
没有为 .ts 文件添加 .js 扩展
-
无法在 node_modules 中运行 TS
Node.js 团队介绍了提供该功能的动机:“让用户能够执行 TypeScript 文件对于推动生态系统向前发展至关重要。我们必须承认用户希望在不安装外部依赖项或加载程序的情况下运行
node foo.ts
。”
详细路线图查看:
https://github.com/nodejs/loaders/issues/217
Reference
https://github.com/nodejs/node/pull/53725