Babel 转换后为什么箭头函数没变成普通函数? 丽丽🍀 提问于 2026-03-23 11:29:17 阅读 3 工具 我用 Babel 把 ES6 代码转成 ES5,但发现箭头函数还是原样保留,没变成 function 形式。 我的 .babelrc 配置是这样的: { "presets": ["@babel/preset-env"] } 项目里也装了 @babel/preset-env,按理说应该会转换才对啊?是不是还要额外配什么插件? Babel 我来解答 赞 3 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 1 条解答 萌新.金静 Lv1 Babel 默认情况下会根据你的 target 环境来决定是否转换箭头函数。看起来你的配置没问题,但可能是因为你指定的目标环境支持箭头函数,所以 Babel 没有进行转换。 试试这个方法,在你的 .babelrc 文件里添加 targets 配置,强制 Babel 转换箭头函数。比如: { "presets": [ ["@babel/preset-env", { "targets": { "ie": "11" } }] ] } 这里我假设你想兼容 IE11,你可以根据实际需求调整 targets 配置。这样 Babel 就会把箭头函数转换成普通的 function 形式。 回复 点赞 2026-03-23 12:00 加载更多 相关推荐 2 回答 40 浏览 为什么我的Babel配置无法转换ES6箭头函数? 大家好,我在项目里用了Babel转码,但箭头函数一直没被转成ES5语法。配置文件和代码都检查了好几遍,但还是不行... 我的.babelrc配置是这样写的: { "presets": ["@babel... Newb.玉曼 工具 2026-02-18 09:00:37 2 回答 35 浏览 Babel配置了preset-env为什么箭头函数没转译? 我在React项目里配置了@babel/preset-env,但代码里的箭头函数没转译成ES5,这是怎么回事? 项目里用了.babelrc配置: { "presets": ["@babel/prese... Designer°乙涵 工具 2026-02-16 16:33:25 2 回答 60 浏览 Babel配置后箭头函数没转成普通函数,旧版浏览器报错怎么办? 我在项目里用了箭头函数写组件方法,按照教程安装了@babel/preset-env并配置了.babelrc: { "presets": ["@babel/preset-env"] } 但打包后代码里箭... 萌新.文雅 工具 2026-02-15 13:24:30 2 回答 33 浏览 为什么用了@babel/preset-env后箭头函数没被转译? 折腾了一下午还是没解决,项目里用了Babel和@babel/preset-env配置了targets,但箭头函数在打包后居然没转译成普通函数,Chrome没问题,用IE11直接报错。配置文件应该没问题... Mr-金利 工具 2026-02-15 11:48:25 1 回答 13 浏览 Babel插件里怎么判断一个节点是不是箭头函数? 我在写一个Babel插件,想在遍历AST的时候识别出箭头函数,但不确定该用什么条件判断。试过 node.type === 'ArrowFunctionExpression',但有时候好像不生效? 比如... 慕容爱军 工具 2026-03-21 20:01:17 1 回答 23 浏览 Babel插件里怎么准确判断一个节点是不是箭头函数? 我最近在写一个Babel插件,想专门处理箭头函数,但发现用 path.isArrowFunctionExpression() 有时候不生效。比如遇到这种写法:const fn = () => {... 公孙馨翼 工具 2026-03-15 05:19:17 2 回答 23 浏览 Babel插件没生效,箭头函数还是没转成普通函数? 我在项目里配了@babel/plugin-transform-arrow-functions,但打包后的代码里箭头函数还是原样保留,根本没转换。是不是我插件配置写错了? 我的Babel配置是这样的: ... Top丶云飞 工具 2026-03-07 16:55:17 2 回答 17 浏览 @babel/preset-env 没有转译箭头函数,是我配置错了吗? 我在项目里用了 @babel/preset-env,但打包后的代码里还是有箭头函数,低版本浏览器直接报错。我明明设了 targets 啊,是不是哪里没配对? 这是我的 .babelrc 配置: { &... 博主玉鑫 工具 2026-03-03 10:03:18 2 回答 159 浏览 为什么配置了Babel Presets后箭头函数没被转译? 在Vue项目里安装了@babel/preset-env,配置了.babelrc文件,但箭头函数还是没被转译成普通函数。试过更新Babel版本,检查过浏览器列表配置,打包后代码里箭头函数还是原样,控制台... 慕容艳苹 工具 2026-02-06 02:00:31 2 回答 40 浏览 Babel配置中设置targets时,为什么指定了浏览器版本却没转译某些语法? 我在项目里用Babel配置了targets为"chrome 90",但发现代码里的箭头函数() => {}仍然没被转译。明明用的是Chrome 80测试时会报错啊,这是怎么回事? 尝试过在.ba... UX文轩 工具 2026-02-16 16:50:25
试试这个方法,在你的 .babelrc 文件里添加 targets 配置,强制 Babel 转换箭头函数。比如:
这里我假设你想兼容 IE11,你可以根据实际需求调整 targets 配置。这样 Babel 就会把箭头函数转换成普通的 function 形式。