使用Rollup和Babel将ES2017 JavaScript(特别是async/await函数)转换为ES5时出现错误:


  使用“ babel”插件转换\ src \ index.js时出错:选项
  {“ modules”:false}传递给
  \ node_modules \ babel-preset-es2017 \ lib \ index.js不接受
  选项。


我的.babelrc文件:

{
  "presets": [
    "es2017"
  ],
  "plugins": [
    "transform-runtime"
  ],
  "comments": false
}


自然地,如果我将presetses2017更改为es2015并注释掉async/await代码,该错误就会消失。

请注意,虽然应用程序使用ES2017功能(即async/await),但它是作为NPM程序包(作为ES6 (ES2015)模块)发布的,后来又被编译为通用的ES5 (ES2009)

如何克服此错误并使我的ES2017愉快地移植到ES5

最佳答案

您提供的实际配置似乎是:

{
  "presets": [
    "es2017", {modules: false}
  ],
  "plugins": [
    "transform-runtime"
  ],
  "comments": false
}


您应删除{modules: false}babel-preset-es2017选项,该选项不接受,因为它适用于babel-preset-es2015

关于javascript - Babel/汇总错误转译和捆绑ES2017,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39902076/

10-11 20:06