基本格式

CLI 命令行工具的基本格式为:

eslint [options] [file|dir|glob]*

options

这里我们对众多的 options 选项进行一个分类,然后每一类选择几个典型的命令来进行介绍。

基本配置

--no-eslintrc

忽略所有的配置文件,当使用这个 option 时,ESLint 只会使用内置的规则集来对匹配上的文件进行检查

-c--config

指定配置文件的路径

--env

指定一些环境,当指定了具体的环境后,就会预设一些该环境下才会有的全局变量。

eslint --env browser,node file.js
eslint --env browser --env node file.js

上面的 CLI 命令中,指定了 browser 和 node 环境,就会预设 windowprocess 之类的全局变量

--ext

指定要检查的文件的扩展名,默认情况下,ESLint 只检查 js 文件。

eslint . --ext .js,.ts
eslint . --ext .js --ext .ts

--global

定义全局变量。例如我们的项目使用到了 jQuery,但是 ESLint 是不认识的,所以就可以使用 global 来定义这个全局变量

eslint --global jQuery:true .

--parser

指定一个自定义的 JavaScript 解析器。默认情况下,ESLint 使用 Espree。

特殊规则和插件的配置

--plugin

用来指定要使用插件

--rule

指定检查的规则,一般来讲,检查规则是写到配置文件里。但是针对某些场景下单独的一两条规则要改变,可以使用这种方式

eslint --rule 'quotes: [error, double]' .

自动修复

--fix

表示自动修复,但是需要清楚,不是所有的问题 ESLint 都可以帮你修复。

--fix-type

允许指定修复问题的类型,对应的值有:

上面的修复问题类型是可以同时指定多个的:

eslint --fix --fix-type suggestion --fix-type problem .

忽略文件

--ignore-path

指定忽略文件的路径。

所谓忽略文件,就是指在项目中可以创建一个 .eslintignore 的文件,该文件里面记录一些文件名或者目录名,ESLint 在进行代码检查的时候,会忽略这些匹配上的文件名或者目录下面的文件

--no-ignore

忽略所有的忽略指令。本来 .eslintignore 文件里面记录了 ESLint 在进行检查的时候要忽略的文件,当用了这个指令之后,相当于 .eslintignore 文件失效,里面记录的那些文件都要被 ESLint 检查

--ignore-pattern

简单来说,就是将原本应该写在 .eslintignore 里面的文件或者目录,写在了命令行里面

eslint --ignore-pattern "/lib/" --ignore-pattern "/src/vendor/*" .

输出

-o--output-file

允许将 ESLint 的检查报告输出到一个文件里面

eslint -o report.txt .

-f, --format

正常情况下,ESLint 的检查报告在控制台进行输出,这个指令可以配置输出的格式

缓存

--cache

在进行 ESLint 检查时,生成一个缓存文件 .eslintcache,缓存文件默认在当前目录下面,有了缓存文件之后,下一次 ESLint 在做检查的时候速度会更快

--cache-location

指定缓存文件的位置

--cache-strategy

指定生成缓存时的缓存策略,对应的策略值有两个: