** 前面 **
** 为了能够写出更优雅的代码,更好的拥抱社区,开始在实际项目中使用ESLint。**
本文是初学的记录,仅作参考。
** ESLint **
** 介绍 **
ESLint最初是由Nicholas C. Zakas ( JavaScript 红宝书 作者)于2013年6月创建的开源项目。它的目标是提供一个插件化的javascript代码检测工具。
ESLint 的初衷是为了让程序员可以创建自己的检测规则。ESLint 的所有规则都被设计成可插入的。ESLint 的默认规则与其他的插件并没有什么区别,规则本身和测试可以依赖于同样的模式。为了便于人们使用,ESLint 内置了一些规则,当然,你可以在使用过程中自定义规则。
每条规则
- 各自独立
- 可以开启或关闭(没有什么可以被认为“太重要所以不能关闭”)
- 可以将结果设置成警告或者错误
另外
- ESLint 并不推荐任何编码风格,规则是自由的
- 所有内置规则都是泛化的
** 安装 **
1 | ### yarn 全局 |
** 初始化(配置文件)**
1 | eslint --init |
** 使用 **
1 | eslint yourfile.js |
以上是使用的yarn安装,这里我介绍下npm的全局安装和局部安装姿势
** npm **
1 | ## 局部 |
** 配置 **
可以通过以下三种方式配置 ESLint:
- 使用
.eslintrc
文件(支持 JSON 和 YAML 两种语法); - 在
package.json
中添加eslintConfig
配置块; - 直接在代码文件中定义。
** .eslintrc
文件示例 **
1 | { |
env:
你的脚本将要运行在什么环境中globals:
额外的全局变量
rules:
开启规则和发生错误时报告的等级
规则的错误等级有三种:
0或’off’:关闭规则。
1或’warn’:打开规则,并且作为一个警告(并不会导致检查不通过)。
2或’error’:打开规则,并且作为一个错误 (退出码为1,检查不通过)。
参数说明:
参数1 : 错误等级
参数2 : 处理方式
更多Rules
** package.json
示例 **
1 | { |
** 文件内配置 **
代码文件内配置的规则会覆盖配置文件里的规则。
禁用 ESLint:
1 | /* eslint-disable */ |
禁用一条规则:
1 | /*eslint-disable no-alert */ |
调整规则:
1 | /* eslint no-comma-dangle:1 */ |
** 其它 **
检查且修复
1 | eslint xxx.js --fix |
** 尾声 **
本文只是对ESLint的粗浅介绍,或许在使用一段时间后,会对本文做修改、补充,有或者另写一篇博文介绍心得。
** 参考 **
eslint
eslint-cn
利用ESLint检查代码质量
ESLint_docs
ESLint 使用入门
ESLint深入使用
Eslint 从入门到放弃