javascript - Babel 将新请求(fetch-api)转换为函数调用,导致 Chrome 中出现错误

标签 javascript babeljs uglifyjs2 webpack-2 babel-polyfill

我编写了一个单独的 API 库,我将其保留为纯 ES6(带有生成器等),但它依赖于 isomorphic-fetch 库(因此它可以在节点和浏览器上下文中使用)。

当在另一个项目中使用 webpack 2 导入它时,一切都很顺利,直到我尝试完成缩小/优化过程。由于不支持生成器语法,UglifyJS 不会处理它。因此,我尝试通过 babel 作为 webpack 加载器运行该库,但现在尝试在浏览器中运行代码时,出现以下错误:

未捕获( promise 中)类型错误:无法构造“请求”:请使用“new”运算符,此 DOM 对象构造函数无法作为函数调用。

我似乎陷入了第 22 条军规,我不确定为什么 Babel 保留了某些 native 类而不是 Request 类。

非常感谢任何帮助,我一直在为这个问题而把头撞在 table 上。

最佳答案

我发现了这个问题,事实证明我需要 babel-plugin-transform-b​​uiltin-extend 插件,因为在 API 库中,我正在扩展基本 Request 对象。

关于javascript - Babel 将新请求(fetch-api)转换为函数调用,导致 Chrome 中出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40207083/

相关文章:

javascript - 在extendscript中创建颜色选择器GUI的最佳方法?

javascript - 括号表示法可以用来压缩/混淆 JavaScript 吗?

javascript - 将各种类型的对象作为 AJAX post 请求传递?

node.js - 未知选项 : . ../.babelrc.presets

javascript - 有没有办法设置 webpack 配置来加载特定的 core-js 条目

vue.js - Vue CLI 3 不会将供应商转换为 ES5

javascript - 我可以通过API使用uglifyjs美化javascript吗?

java - 为什么 SuperDevMode 只提供 LogLevel SEVERE?

javascript - 滚动然后捕捉到顶部