ESLint 报错解决:Parsing error: Unexpected token

阅读时长 4 分钟读完

在前端开发过程中,我们经常会碰到“Parsing error: Unexpected token”的报错,这是由于代码中出现了不符合语法规范的语句,导致浏览器或 Node.js 无法正确解析。

而在编写代码时使用 ESLint 可以帮助我们规范代码风格,提高代码质量,但有时候也会出现 ESLint 报错的情况,本文将介绍如何解决 ESLint 报错中最常见的一种:Parsing error: Unexpected token。

问题分析

当代码中出现不符合语法规范的语句时,比如不闭合的括号、不正确的变量声明等,就会导致 ESLint 报错“Parsing error: Unexpected token”。

例如以下代码:

在运行 ESLint 后可能会出现如下报错:

这是由于代码中没有任何问题,ESLint 仍然无法正确解析。

那么如何解决这个问题呢?接下来我们将讨论几种解决方法。

解决方法

1. 检查语法

首先,我们需要检查代码中是否有语法错误,是否缺少括号、分号等符号,是否参数不正确等。

例如以下代码中,变量声明缺少了关键字 var、let 或 const:

运行 ESLint 后,就会出现“Parsing error: Unexpected token”报错。

因此,我们需要检查代码,并修正错误。

2. 检查 ESLint 配置

如果代码中没有出现语法错误,可以检查一下 ESLint 配置文件是否正确。

在项目根目录下,找到 .eslintrc.json 或 .eslintrc.js 配置文件,检查是否存在如下配置:

其中,parser 选项是指定解析器,parserOptions.ecmaVersion 是指定语言版本,需要与项目中使用的语法版本保持一致。

3. 修改解析器

如果以上两种方法都没有解决问题,可以尝试修改解析器,切换到支持项目使用的语言版本的解析器。

例如,如果项目中使用了 ES6 语法,可以使用 babel-eslint 解析器:

如果项目中使用了 Typescript,可以使用 @typescript-eslint/parser 解析器:

终极解决办法

如果以上方法都无法解决问题,我们可以使用更为暴力的方式,关闭 ESLint 对文件的语法检查。

在现有的 ESLint 配置文件中加入如下代码:

这样就可以关闭 ESLint 对空格、tab、空行的检查了,同时也会关闭语法检查。不过,这并不是最佳的解决方法,我们需要进一步检查代码是否符合规范。

总结

当 ESLint 报错“Parsing error: Unexpected token”时,首先需要检查代码是否存在语法错误,然后检查 ESLint 配置是否正确,最后可以尝试修改解析器。如果以上方法都无法解决问题,可以使用更为暴力的方式,关闭 ESLint 对语法的检查。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65a6eb25add4f0e0fffbc8df

纠错
反馈

纠错反馈