eslint 配置_整理vue中eslintrc.js各项配置详细解说,看完才知道为什么这么用

ff5c16311d6f76fd6f1ae179138ae3ed.png

/**

* 参考文档

* 【eslint英文文档】https://eslint.org/docs/user-guide/configuring

* 【eslint中文文档】http://eslint.cn/docs/rules/

*/

/**

* eslint有三种使用方式

* 【1】js代码中通过注释的方式使用

* 【2】通过webpack的eslintConfig字段设置,eslint会自动搜索项目的package.json文件中的配置

* 【3】通过配置文件的方式使用,配置文件有多种文件方式,如JavaScript、JSON 或者 YAML等

*/

/**

* 文件忽略

* 【1】让eslint跳过特定文件的检测

* 【2】通过当前工作目录下 「.eslintignore」 文件进行设置

* 其使用的是Glob路径书写方式,与「.gitignore」的使用方法相同

* 【3】也可以在 package.json 文件中,通过 eslintIgnore 参数进行设置

*/

/**

* 文件内局部设置

* 【1】eslint可以具体文件中设置特定代码的规则,常用于跳过某条语句的检测。

* 【2】注销全部规则,在代码前新建一行,添加注销 /* eslint-disable */ 。如果没有恢复设置的语句,则下列全部代码都会跳过检测。

* 【3】恢复eslint,在代码前新建一行,添加注销 /* eslint-enable */

* 【4】指定忽略的规则,/* eslint-disable no-alert, no-console */

* 【5】在特定行禁用,// eslint-disable-line

* 【6】在下一行禁用,// eslint-disable-next-line

*/

module.exports = {

/**

* 根目录标识

* http://eslint.cn/docs/user-guide/configuring#using-configuration-files

* http://eslint.cn/docs/user-guide/configuring#configuration-cascading-and-hierarchy

* 【1】标识当前配置文件为最底层的文件,无需往更上一级的文件目录中进行搜索

* 【2】默认eslint的配置文件搜索方式是,从目标文件夹进行搜索,遍历内部每一个文件夹,找到配置文件并层叠使用。再跳出本项目,往祖先文件夹进行遍历

* 【3】注意「~/.eslintrc」的意义,「~」是指linux上的家目录,「~/.eslintrc」是指家目录下的eslint配置文件,用于私人开发者,用于整个电脑全局约束的。这个配置通过本配置项root去设置,设置了root,eslint检测时将不会再往上搜索

* 【4】eslint的生效规则是就近使用,越近的配置项优先级越高,覆盖其他配置项。如一个项目中,可以在不同文件夹中都添加配置文件,这些规则将重叠组合生效

*/

root: true, // 标识当前配置文件为eslint的根配置文件,让其停止在父级目录中继续寻找。

/**

* 解析器

* http://eslint.cn/docs/user-guide/configuring#specifying-parser

* 【1】ESLint 默认使用Espree作为其解析器

* 【2】解析器必须是本地安装的一个 npm 模块。即必须按照在本地的node_module中

* 【3】解析器是用于解析js代码的,怎么去理解每一个表达式,有点C++中编译器的概念,会对js进行一些语法分析,语义分析什么的,才能判断语句符不符合规范。而不是通过简单的字符串对比。

* 【4】解析器有很多,但兼容eslint的解析器有以下几个

* Espree:默认解析器,一个从Esprima中分离出来的解析器,做了一些优化

* Esprima:js标准解析器

* Babel-ESLint: 一个对Babel解析器的包装,babel本身也是js解析器的一种(不然怎么能转化为兼容性代码呢?首先需要进行js解析,才能转化)。如果我们的代码需要经过babel转化,则对应使用这个解析器

* typescript-eslint-parser(实验) - 一个把 TypeScript 转换为 ESTree 兼容格式的解析器

* 【5】但是通常在vue项目中,并不会写在 parser 字段中,而是写在 parserOptions -> parser。具体原因在 parserOptions 一栏中介绍

*/

// parser: 'babel-eslint',

/**

* 解析器配置项

* http://eslint.cn/docs/user-guide/configuring#specifying-parser-options

* 【1】这里设置的配置项将会传递到解析器中,被解析器获取到,进行一定的处理。具体被利用到,要看解析器的源码有没有对其进行利用。这里仅仅做了参数定义,做了规定,告诉解析器的开发者可能有这些参数

* 【2】配置项目有:

* "sourceType": "module

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值