【问题标题】:Do I have to use Babel in Node.js?我必须在 Node.js 中使用 Babel 吗?
【发布时间】:2016-12-11 09:19:26
【问题描述】:

我知道 Node.js 现在完全支持 ES6,(使用 nodejs 7.2.1)。 有人告诉我,Node.js 的 ES6 实现还没有准备好生产,我必须有 Babel 才能生产准备好的 ES6。

我阅读了 babeljs.io,它是一个 JavaScript 编译器,适用于不支持 ES6 的旧浏览器。

我有点困惑。 Node.js 需要 Babel 编译成 ES5 吗?或者我可以在 ES6 中使用 Node.js 吗?准备好生产了吗?我真的需要 Babel 和 Node.js 吗?

【问题讨论】:

  • 这取决于您需要什么功能。大多数 ES2015 功能都可用且稳定。没有 ES6 模块。
  • 根据kangax.github.io/compat-table/es6,您需要什么?或者您可以将您的要求与node.green 进行比较
  • 你不应该在生产中使用 babel 作为节点,因为 babel 的工作方式,它会对你的性能产生负面影响。在此线程中阅读更多内容:stackoverflow.com/questions/30773756/…。 ES6/2015 的节点实现实际上已经准备好生产,因为它原生内置在 V8 中。

标签: javascript node.js ecmascript-6 babeljs


【解决方案1】:

最新的 Node.js 版本几乎支持除模块之外的所有 ES6 功能。但是,例如,如果您正在为 Node.js 开发一个库,那么许多使用它的人可能没有最新版本的 Node。如果你不知道你的包将在哪里使用,你应该使用es2015 预设。如果你知道你的包只会在 Node.js 7.x 中使用,你可以使用babel-preset-node7

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-22
    • 2013-12-19
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多