You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESLint箭头函数解析错误求助:不知错误原因及配置修改方案

解决ESLint解析错误:Unexpected token =>

我来帮你搞定这个ESLint解析报错的问题——这个Parsing error: Unexpected token =>本质是因为ESLint的解析器没识别到ES2017引入的async箭头函数语法。你的代码本身语法是对的,问题出在ESLint的配置上。

错误原因

ESLint默认使用的Espree解析器,默认配置可能没有启用对ES2017+语法的支持。而你写的async () => {}这种异步箭头函数是ES2017的新特性,所以解析器会把=>判定为意外的语法标记。

解决方案

根据你的项目场景,选下面对应的方法修复:

方案1:基础ESLint配置调整(无Babel场景)

如果你的项目不需要Babel转译,直接在ESLint配置文件(比如.eslintrc.js、.eslintrc.json,或者package.json里的eslintConfig字段)中,修改parserOptions,指定支持的ECMAScript版本:

// .eslintrc.js示例
module.exports = {
  parserOptions: {
    ecmaVersion: 2017, // 也可以用"latest"自动适配最新ES语法
    sourceType: "module" // 因为你用了ES6的const等模块级语法
  },
  // 你的其他ESLint规则配置...
};

方案2:适配Babel项目

如果你的项目用Babel做转译(比如依赖@babel/preset-env),需要用@babel/eslint-parser替代默认解析器,让ESLint能识别Babel支持的所有语法:

  1. 先安装必要依赖:
npm install --save-dev @babel/eslint-parser @babel/core @babel/preset-env
  1. 修改ESLint配置:
// .eslintrc.js示例
module.exports = {
  parser: "@babel/eslint-parser",
  parserOptions: {
    babelOptions: {
      presets: ["@babel/preset-env"]
    }
  },
  // 其他ESLint规则...
};

方案3:升级ESLint版本

如果你的ESLint版本太老(比如v6及更早),对新语法的支持可能有缺陷,建议升级到最新稳定版:

npm install --save-dev eslint@latest

验证修复

修改完配置后,重启ESLint的服务(或者重新运行eslint命令),这个解析错误应该就会消失了。

内容的提问来源于stack exchange,提问作者Mike Williamson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:54:25