Babel 转换后为什么箭头函数没变成普通函数?

丽丽🍀 阅读 3

我用 Babel 把 ES6 代码转成 ES5,但发现箭头函数还是原样保留,没变成 function 形式。

我的 .babelrc 配置是这样的:

{
  "presets": ["@babel/preset-env"]
}

项目里也装了 @babel/preset-env,按理说应该会转换才对啊?是不是还要额外配什么插件?

我来解答 赞 3 收藏
二维码
手机扫码查看
1 条解答
萌新.金静
Babel 默认情况下会根据你的 target 环境来决定是否转换箭头函数。看起来你的配置没问题,但可能是因为你指定的目标环境支持箭头函数,所以 Babel 没有进行转换。

试试这个方法,在你的 .babelrc 文件里添加 targets 配置,强制 Babel 转换箭头函数。比如:

{
"presets": [
["@babel/preset-env", {
"targets": {
"ie": "11"
}
}]
]
}


这里我假设你想兼容 IE11,你可以根据实际需求调整 targets 配置。这样 Babel 就会把箭头函数转换成普通的 function 形式。
点赞
2026-03-23 12:00