版本

配置解析器

您可以使用自定义解析器将 JavaScript 代码转换为抽象语法树,以便 ESLint 进行评估。如果您的代码与 ESLint 的默认解析器 Espree 不兼容,您可能需要添加一个自定义解析器。

配置自定义解析器

在许多情况下,您可以使用 ESLint 附带的默认解析器来解析您的 JavaScript 代码。您可以选择使用 parser 属性来覆盖默认解析器。parser 属性必须是一个符合解析器接口的对象。例如,您可以使用@babel/eslint-parser 包来允许 ESLint 解析实验性语法

// eslint.config.js
import babelParser from "@babel/eslint-parser";

export default [
    {
        files: ["**/*.js", "**/*.mjs"],
        languageOptions: {
            parser: babelParser
        }
    }
];

此配置确保使用 Babel 解析器而不是默认的 Espree 解析器来解析所有以 .js.mjs 结尾的文件。

以下第三方解析器已知与 ESLint 兼容

配置解析器选项

解析器可能接受选项以改变其行为方式。languageOptions.parserOptions 用于将选项直接传递给解析器。这些选项始终是解析器特定的,因此您需要查看您正在使用的解析器的文档以获取可用选项。以下是如何为 Babel ESLint 解析器设置解析器选项的示例

// eslint.config.js
import babelParser from "@babel/eslint-parser";

export default [
    {
        languageOptions: {
            parser: babelParser,
            parserOptions: {
                requireConfigFile: false,
                babelOptions: {
                  babelrc: false,
                  configFile: false,
                  presets: ["@babel/preset-env"]
                }
            }
        }
    }
];
更改语言