eslint和格式化工具冲突问题

于使用eslint很多人应该都遇到过格式化工具冲突的问题,复制错误信息到网上找,大部分信息都在告诉你如何安装并使用一个预处理插件。然而试了无数方法,始终无法解决问题。

我也是在被这个问题折磨的欲生欲死之后,问了公司老大哥才知道是由于格式化规则和eslint检查规则有冲突,才导致构建报错,实际代码是可以运行的。

解决这个问题,可以有三种方法。

第一种是修改格式化工具的配置,当然这种方法个人感觉是最蠢的,因为大部分人不会花太多精力去研究格式化工具的配置。

第二种方法则是禁用eslint的检查规则(在eslint配置文件的rules选项中禁用,具体方法可以在网上搜索),目前我在项目中遇到最多的就是单引号双引号冲突,函数体结尾分号冲突,以及函数名和括号之间存在空格的冲突问题,关于冲突很容易通过禁用eslint检查规则来实现,在文末我将贴出在网上找到的一些禁用规则。当然,现在很多规则也被移除了,比如说我所遇到的函数名和括号之间存在空格问题,所以在使用这些规则之前需要明确eslint版本。

第三种我觉得是写项目是最高效的,使用插件来同步格式化工具和eslint的规则,就比如说prettier代码格式化工具就可以使用eslint-config-prettier插件来同步规则,置于其他插件可以在网上搜索。


如果想要查看完整的eslint规则,可以到官网中查看(https://cn.eslint.org/docs/rules/

for-direction

强制 “for” 循环中更新子句的计数器朝着正确的方向移动

getter-return

强制 getter 函数中出现 return 语句

no-async-promise-executor

禁止使用异步函数作为 Promise executor

no-await-in-loop

禁止在循环中出现 await

no-compare-neg-zero

禁止与 -0 进行比较

no-cond-assign

禁止条件表达式中出现赋值操作符

no-console

禁用 console

no-constant-condition

禁止在条件中使用常量表达式

no-control-regex

禁止在正则表达式中使用控制字符

no-debugger

禁用 debugger

no-dupe-args

禁止 function 定义中出现重名参数

no-dupe-keys

禁止对象字面量中出现重复的 key

no-duplicate-case

禁止出现重复的 case 标签

no-empty

禁止出现空语句块

no-empty-character-class

禁止在正则表达式中使用空字符集

no-ex-assign

禁止对 catch 子句的参数重新赋值

no-extra-boolean-cast

禁止不必要的布尔转换

no-extra-parens

禁止不必要的括号

no-extra-semi

禁止不必要的分号

no-func-assign

禁止对 function 声明重新赋值

no-inner-declarations

禁止在嵌套的块中出现变量声明或 function 声明

no-invalid-regexp

禁止 RegExp 构造函数中存在无效的正则表达式字符串

no-irregular-whitespace

禁止不规则的空白

no-misleading-character-class

不允许在字符类语法中出现由多个代码点组成的字符

no-obj-calls

禁止把全局对象作为函数调用

no-prototype-builtins

禁止直接调用 Object.prototypes 的内置属性

no-regex-spaces

禁止正则表达式字面量中出现多个空格

no-sparse-arrays

禁用稀疏数组

no-template-curly-in-string

禁止在常规字符串中出现模板字面量占位符语法

no-unexpected-multiline

禁止出现令人困惑的多行表达式

no-unreachable

禁止在 return、throw、continue 和 break 语句之后出现不可达代码

no-unsafe-finally

禁止在 finally 语句块中出现控制流语句

no-unsafe-negation

禁止对关系运算符的左操作数使用否定操作符

require-atomic-updates

禁止由于 await 或 yield的使用而可能导致出现竞态条件的赋值

use-isnan

要求使用 isNaN() 检查 NaN

valid-typeof

强制 typeof 表达式与有效的字符串进行比较
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值