node.js - Node.js 10 的 TypeScript tsconfig 设置?

标签 node.js typescript compilation

有谁知道 Node.js v10.x 需要哪些目标/库才能在没有生成器的情况下使用内置的异步/等待?我在 Node 8 上看到了很多,但在 Node 10 上却看不到。

最佳答案

自 Node.js 10.0.0 起,100% 支持 ES2018。如果您知道您的目标是该版本或更高版本,则最佳配置将如下所示:

  • "module": "commonjs"

    Node.js 正在添加 ES 模块,但现在我们必须坚持使用 CommonJS。

  • "target": "es2018"

    这告诉 TypeScript 可以输出具有 ES2018 特性的 JavaScript 语法。实际上,这意味着它将例如输出对象 rest/spread 属性和 async/await 语法,而不是嵌入 polyfill。

  • "lib": ["es2018"]

    这告诉 TypeScript 可以使用在 ES2018 或更早版本中引入的函数和属性。实际上,这意味着您可以使用例如Promise.prototype.finallyArray.prototype.includesString.prototype.padStart

因此完整的配置是:

{
  "compilerOptions": {
    "lib": ["es2018"],
    "module": "commonjs",
    "target": "es2018"
  }
}

如果你运行的是 Node.js 18,你可以看到我的 similar answer for Node.js 18 here

如果你运行的是 Node.js 16,你可以看到我的 similar answer for Node.js 16 here

如果你运行的是 Node.js 14,你可以看到我的 similar answer for Node.js 14 here

如果你运行的是 Node.js 12,你可以看到我的 similar answer for Node.js 12 here

如果你运行的是 Node.js 8,你可以看到我的 similar answer for Node.js 8 here

关于node.js - Node.js 10 的 TypeScript tsconfig 设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51716406/

相关文章:

尽管使用量保持不变,Node.JS V8 堆仍快速增长

node.js - 将 TypeScript 枚举与 Mongoose 模式一起使用

typescript 发出的声明找不到全局接口(interface)的名称

Java - 如何使用 Java Eclipse 编译单个文件

javascript - Webpack 意外 token (React)可能需要加载器 - 已经有一个

javascript - 根据字符串从数组中半随机选择

编译错误: Fprintf throws parse error

linux - 从源代码编译 Linux 内核 2.6.10 - 错误 : operand type mismatch for `mov'

node.js - chrome-aws-lambda + lighthouse 总是导致错误 : connect ECONNREFUSED 127. 0.0.1:9222

Angular:管道不起作用