入门使用

注意❗

要使用 ESLint,你必须安装并构建 Node.js^18.18.0^20.9.0 或 >=21.1.0)并支持 SSL。(如果你使用的是官方 Node.js 发行版,则始终内置 SSL。)

安装

你可以使用以下命令安装和配置 ESLint:

npm init @eslint/config@latest

配置

注意:如果你使用的是 9.0.0 之前的版本,请参阅 迁移指南

运行 npm init @eslint/config 后,你的目录中将有一个 eslint.config.js(或 eslint.config.mjs)文件。在其中,你将看到一些配置如下的规则:

// eslint.config.js
export default [
    {
        rules: {
            "no-unused-vars": "error",
            "no-undef": "error"
        }
    }
];

名称 "no-unused-vars" 和 "no-undef" 是 ESLint 中 规则 的名称。第一个值是规则的错误级别,可以是以下值之一:

  • "off" 或 0 - 关闭规则
  • "warn" 或 1 - 打开规则作为警告(不影响退出代码)
  • "error" 或 2 - 打开规则作为错误(退出代码将为 1)

三个错误级别允许你对 ESLint 如何应用规则进行细粒度控制(有关更多配置选项和详细信息,请参阅 配置文档)。

你的 eslint.config.js 配置文件还将包含推荐配置,如下所示:

// eslint.config.js
import js from "@eslint/js";
 
export default [
    js.configs.recommended,
 
    {
        rules: {
            "no-unused-vars": "warn",
            "no-undef": "warn"
        }
    }
];

js.configs.recommended 对象包含配置以确保打开 规则页面 上标记为推荐的所有规则。或者,你可以通过在 npmjs.com 上搜索 “eslint-config” 来使用其他人创建的配置。除非你从共享配置扩展或在配置中明确打开规则,否则 ESLint 不会检查你的代码。

如果你想使用托管在 npm 上的特定可共享配置,你可以使用 --config 选项并指定包名称,比如 eslint-config-standard

# use `eslint-config-standard` shared config
 
npm init @eslint/config@latest -- --config eslint-config-standard

更详细的配置如下:

import globals from "globals";
import pluginJs from "@eslint/js";
 
export default [
  { files: ["**/*.js"], languageOptions: { sourceType: "commonjs" } },
  { languageOptions: { globals: globals.browser } },
  pluginJs.configs.recommended,
];

之后,你可以在任何文件或目录上运行 ESLint,对yourfile.js文件进行校验,如下所示:

npx eslint yourfile.js

常见问题

常用插件

共享配置

文件处理器

  • eslint-plugin-vue: 使EsLint拥有处理.vue文件的能力。
  • babel-eslint: babel-eslint是一款es语法解析器,使用它解析代码可以提供一些es实验阶段语法的校验支持。
  • typescript-eslint:使 ESLint 和 Prettier 能够支持 TypeScript 的工具。

扩展阅读