babeljs - regeneratorRuntime 未定义(如何防止 babel 包含该 polyfill?)
问题描述
我继续得到:
App.jsx:11 Uncaught ReferenceError: regeneratorRuntime 未定义
在任何执行异步的行上。我不喜欢那个 polyfill,但我很难摆脱它:
app.jsx:11)
const fetcher = (async () => {
"@babel/cli": "^7.4.4",
"@babel/core": "^7.4.4",
"@babel/preset-env": "^7.4.4",
"@babel/preset-react": "^7.0.0",
"@types/react": "^16.8.17",
"babel-preset-env": "^1.7.0"
这里是.babelrc
{
"presets": [
[
"@babel/preset-env",
{
"targets": {
"chrome": ">70",
},
"exclude": ["transform-regenerator"]
},
"@babel/preset-react"
]
]
}
解决方案
如果你想使用 async, await with (ES6 or ES Next) 那么你必须安装 @babel/polyfill 但你不需要在 babelrc 文件中写任何东西。只需安装
npm install --save @babel/polyfill
从文档中:
因为这是一个 polyfill(它将在您的源代码之前运行),我们需要它是一个依赖项,而不是一个 devDependency
最后,您需要在 mainJS (App.js) 文件中导入 @bable/polyfill,例如:
import "@babel/polyfill";
推荐阅读
- php - Laravel 在通知中获取数组作为字符串
- discord.js - node-fetch 和 discord.js | 每次使用命令时如何从网站获取信息或标题?
- javascript - 没有设置QueryClient,使用QueryClientProvider设置一个
- postgresql - 如何自动修复我的 Postgres 序列?
- asp.net - Asp.net 会话或分布式缓存 - 这是可行的解决方案
- c# - 如何在 C# 中验证文件夹是否具有“安全”到“所有人 - 完全控制:允许”?
- javascript - 如何显示不同的图像取决于 td 值?
- python - Python 装饰器采用额外的参数反模式
- c# - 在列表字典中查找最大的列表
- stripe-payments - 如何知道条带连接连接的用户入职流程是否已完成或是否需要更多信息?