问题描述
项目执行
pnpm run dev
的时候控制台疯狂报错 ‘> node_modules/.pnpm/axios@1.4.0/node_modules/axios/lib/helpers/readBlob.js:3:17: error: Transforming async generator functions to the configured target environment ("es2015") is not supported yet
3 │ const readBlob = async function* (blob) {’
问题展示
问题原因
- 这个错误可能是是由于Vite目前还不支持将异步生成器函数转换为ES2015目标环境。这在Vue3的某些插件或配置中可能会遇到,特别是当使用Babel进行转译时。
- 这个错误提示也可能是因为你的项目正在试图将异步生成器函数(async generator functions)转换为目标环境"es2015",但是目前不支持这种转换。
问题解决
解决这个问题的一个方法是改变你的Babel配置,尝试将目标环境设置为"es2020"或"latest",而不是"es2015"。这可以在你的
.babelrc
文件或babel.config.js
文件中完成,具体取决于你的配置方式。
- 如果你使用的是
.babelrc
,那么它可能看起来像这样:
{
"presets": [
"@babel/preset-env",
{
"targets": {
"esmodules": true
},
"useBuiltIns": "usage",
"corejs": 3.8 // 或你正在使用的最新版本
}
]
}
- 如果你使用的是babel.config.js,那么它可能看起来像这样:
module.exports = {
presets: [
'@babel/preset-env',
{
targets: {
esmodules: true
},
useBuiltIns: 'usage',
corejs: 3.8 // 或你正在使用的最新版本
}
]
};
- 如果你没有上述的文件,那么它可能看起来像这样:
- 在项目的根目录下创建一个
.babelrc
文件 - 在
.babelrc
文件中添加以下配置
- 在项目的根目录下创建一个
{
"presets": [
[
"@babel/preset-env",
{
"targets": {
"esmodules": true
},
"useBuiltIns": "usage",
"corejs": 3.8 // 根据你实际使用的corejs版本进行选择
}
]
],
"plugins": ["@babel/plugin-transform-runtime"]
}
- 安装依赖
pnpm install --save-dev @babel/preset-env @babel/plugin-transform-runtime @babel/core
- axios版本有问题,降版本
1.4.0不好使,升级到了最新版1.5.1也是一样的问题,所以采取降版本,也需后期更新会解决,附赠axios版本,后期那个新版本解决了请在文章中留言
从高版本一点点试下来,最后定位0.27.0
是可以的