如何在nodejs中使用typescript/flow而不编译它

gar*_*ryx 5 node.js typescript flowtype

有人可以给我一些建议或链接来讨论我是否应该为后端捆绑 JS?

我尝试用这个标题(和类似的词)搜索谷歌,但找不到任何有用的链接。

只是想知道,假设我正在使用最新的 Node.JS(es6-ready),我应该捆绑/编译 JS 吗?如果没有,我该如何使用打字稿/流程?

谢谢。

Dan*_*ser 3

我感觉你在问两个不同的问题。我会尽力回答这两个问题。

我怎样才能运行 TypeScript 代码?

这就是您的问题标题似乎要问的问题(“如何在 Node.js 中使用 typescript/flow 而不编译它”)。为此,您可以使用npm 上的ts-node包。但在生产环境中运行时,使用 ts-node 进行编译通常不是一个好主意,因为它的速度往往不那么快。

TypeScript 代码应该如何分发才能运行?

任何 TypeScript 代码都需要从.ts一个文件编译到另一个.js文件才能最终运行。基本上类似的事情也适用于 Flow 代码。

如果您计划分发用 TypeScript 编写的包,则应该一起发布.js.d.ts文件。这是这样的

  1. 您的包使用者不必重新编译您的包。(他们已经拿到.js文件了。
  2. 您的非 TypeScript 使用者无需安装 TypeScript 即可使用您的包。(他们已经有可运行的.js文件)
  3. 您的 TypeScript 使用者可以获得良好的类型安全性和完成度。(他们得到你的.d.ts文件)

有关更多信息,请参阅有关发布声明文件的 TypeScript 文档。