,,详解Eslint 配置及规则说明

,,详解Eslint 配置及规则说明

本文主要介绍Eslint配置和规则的详细说明。边肖认为这很好。现在分享给大家,给大家一个参考。来和边肖一起看看吧。

本文介绍了Eslint配置和规则的详细解释,分享给大家,如下:

中国官方网站

安装

可以全局安装,也可以在项目下安装。

以下是项目中的安装示例。您只需要在package.json中添加以下配置并安装它:

“埃斯林特”:“^4.11.0”

配置

配置有两种方式,但推荐使用文件配置,文件配置独立,易于维护。

如何使用文件配置:在项目的根目录下,创建一个名为。eslintrc,并在这个文件中添加一些检查规则。

文件配置模式

Env:你的脚本将在什么环境下运行?

环境可以预置其他环境的全局变量,如brower、node环境变量、es6环境变量、mocha环境变量等。

环境':{

' browser': true,

' commonjs': true,

' es6 ':正确

},

全局变量:附加全局变量

全局:{

是的,

wx:没错

},

规则:打开规则并报告错误级别。

规则有三种错误级别:

0“关闭”:关闭规则。

1' warn ':打开规则并作为警告(它不会导致检查失败)。

或者‘error’:打开规则并将其视为错误(退出代码为1,检查失败)。

参数描述:

参数1:误差水平

2:加工方法

配置代码注释方式

有时我们可能想忽略代码中对eslint的某种检查,或者添加某种特定的检查。这时,我们可以用以下方法:

示例:

忽略no-undef检查

/* eslint-disable no-undef */

忽略无新支票

/* eslint-禁用no-new */

设置检查

/* eslint eq eq:off */

/* eslint eq eq:0 */

Eslint检查指令

并检查和修理。

eslint * - fix

检查指定的文件。

eslint app.js - fix

WebStorm上的使用

首选项-语言框架-JavaScript-代码质量工具-ESLINT-启用(检查)-应用-确定

规则描述

' No-alert': 0,//禁止使用警报确认提示。

“No-array-constructor”:禁止使用2,//数组构造函数。

“No-bitwise”:禁止使用0,//位运算符。

' No-caller': 1,//arguments.caller或arguments.callee是禁止的。

' No-catch-shadow': 2,//catch子句的参数禁止与外部作用域变量同名。

' No-class-assign': 2,//禁止给类赋值

' No-cond-assign': 2,//禁止在条件表达式中使用赋值语句。

' No-console': 2,//控制台被禁止。

' No-const-assign': 2,//禁止修改由const声明的变量

' No-constant-condition': 2,//禁止在条件中使用常量表达式if(true) if(1)。

' No-continue': 0,//禁止继续。

' No-control-regex': 2,//禁止在正则表达式中使用控制字符

' No-debugger': 2,//禁止调试器。

' No-delete-var': 2,//不能对var声明的变量使用delete运算符。

' No-div-regex': 1,//不能使用类似division /=foo/的正则表达式

' No-dupe-keys': 2,//创建对象文本{a:1,a:1}时不允许重复的键

' No-dupe-args': 2,//函数参数不能重复

“no-duplicate-case”:2,//开关中的case标签不能重复。

' No-else-return': 2,//如果if语句中有return,它后面不能跟else语句。

' No-empty': 2,block语句中的内容不能为空。

' No-empty-character-class': 2,//正则表达式中的[]内容不能为空。

' No-empty-label': 2,//禁止使用空标签

' No-eq-null': 2,//禁止对null使用==或!=运算符

' No-eval': 1,//禁止eval。

' No-ex-assign': 2,//禁止给catch语句中的异常参数赋值。

' No-extend-native': 2,//禁止扩展本机对象

' No-extra-bind': 2,//禁止不必要的函数绑定。

' No-extra-boolean-cast': 2,//禁止不必要的布尔转换

' No-extra-parens': 2,//禁止不必要的括号

' No-extra-semi': 2,//没有多余的冒号

' No-fallthrough': 1,//禁止开关穿透

' No-floating-decimal': 2,//浮点数中禁止省略0 .5 3。

' No-func-assign': 2,//禁止重复函数声明

' no-Implicit-compression ':1,//禁止隐式转换

No-warning-comments': [1,{'terms': ['todo ',' fixme ',' location':' start'}],//不能有警告注释。

' No-with': 2,//禁用with

Array-bracket-spacing': [2,' never'],//在非空数组中允许额外的空格吗?

' Arrow-parens': 0,//箭头函数用括号括起来。

' Arrow-spacing': 0,//=的前后括号

“accessor-pairs”:0,//在对象中使用getter/setter

“Block-scoped-var”:块语句中使用了0,//var

大括号样式':[1,' 1tbs'],//大括号样式

' Callback-return': 1,//避免多次调用回调或其他东西

' Camelcase': 2,//strong制驼峰命名

逗号-dangle': [2,' never'],//在对象的文本项的末尾不能有逗号。

'逗号分隔':0,逗号前后的空格//逗号

逗号样式':[2,' last'],//逗号样式,换行时位于行首或行尾。

复杂度':[0,11],//循环复杂度

Computed-property-spacing': [0,' never'],//是否允许计算键名什么的

Consistent-return': 0,//return': 0,//return后是否允许省略?

一致-这个':[2,'那个'],//这个别名

“constructor-super”:0,//非派生类不能调用super,派生类必须调用super。

Curly': [2,' all'],//在if(){}中必须使用{}

' Default-case': 2,//switch语句结尾必须有Default

' Dot-location': 0,//对象访问器的位置,在换行时位于行首或行尾。

点符号':[0,{'allowkeywords': true}],//避免不必要的方括号

' Eol-last': 0,//文件以一个换行符结束。

' EQEQEQEQ': 2,//您必须使用同余

“func-names”:0,//函数表达式必须有名称

Func-style': [0,' declaration'],//函数样式,规定只能使用函数声明/函数表达式。

' Generator-star-spacing': 0,在//generator函数*前后的空格

' Guard-for-in': 0,//for-in循环将由if语句筛选。

“handle-callback-err”:0,//Nodejs处理错误

' Id-length': 0,//变数名称长度

Indent': [2,4],//缩进样式

“Init-declarations”:声明时必须给定0,//初始值。

Key-spacing': [0,{'beforecolon': false,' aftercolon': true}],//对象的文字量中冒号前后的空格

' Lines-around-comment': 0,//行前/行后的注释

Max-depth': [0,4],//嵌套块深度

Max-len': [0,80,4],//字符串的最大长度

Max-nested-callbacks': [0,2],//回调嵌套深度

Max-params': [0,3],//函数最多只能有3个参数。

Max-statements': [0,10],//函数中最多有几个语句。

' New-cap': 2,//函数名的第一个大写行必须用New方法调用,第一个小写行必须不用new方法调用。

' New-parens': 2,当//new时必须添加括号

' Newline-after-var': 2,//变量声明后需要空行吗?

Object-curly-spacing': [0,' never'],//大括号中是否允许不必要的空格?

' object-shorted ':0,//strong制对象文本的缩写语法

' One-var': 1,//连续声明

Operator-assignment': [0,' always'],//赋值运算符=-=something

Operator-linebreak': [2,' after'],//换行时运算符是在行尾还是行首?

' Padded-blocks': 0,//是否希望block语句中的第一行末尾有一个空行?

' prefere-Const ':0,//Const是首选的

' prefere-spread ':0,//扩展操作是首选的。

' prefere-Reflect ':0,//反射的方法是首选的。

引号':[1,' single'],//引号类型`````'

Quote-props':[2,' always'],//对象字面量中的属性名是否强制加双引号?

' Radix': 2,//parseInt必须指定第二个参数

“id-match”:0,//命名检测

“require-yield”:0,//生成器函数必须具有yield

Semi': [2,' always'],//语句强制分号结束。

半间距':[0,{'before': false,' after': true}],//分号前后的空格

' Sort-vars': 0,//在声明变量时对它们进行排序

关键字后有空格':[0,'总是'],//关键字后是否要有空格?

blocks前的空格':[0,' always'],//不以新行开始的块{前面是否要有空格?

space-before-function-paren ':[0,' always'],//定义函数时,括号前是否要有一个空格?

Space-in-parens': [0,' never'],//括号中是否需要空格?

' Space-infix-ops': 0,//中缀运算符周围有空格吗?

' Space-return-throw-case': 2,要在//return throw case后面加一个空格吗?

Space-unary-ops': [0,{'words': true,' non words': false}],//是否要在一元运算符的前后添加一个空格?

' Spaced-comment': 0,//在注释样式中需要空格还是其他什么?

' Strict': 2,//使用严格模式

' Use-isNaN': 2,//禁止在比较中使用NaN,只能使用isNaN()

' Valid-jsdoc': 0,//jsdoc规则

“valid-typeof”:2,//必须使用type of的有效值。

' Vars-on-top': 2,//var必须放在作用域的顶部

wrap-life ':[2,' inside'],//立即执行函数表达式的括号样式

“Wrap-regex”:正则表达式的0,//文本用括号括起来。

Yoda': [2,' never']//禁止Yoda条件。

这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • word文档无法编辑是怎么回事-
  • 华为手机怎么设置返回键(华为手机下面的三个按键设置方法)
  • lumia950怎么样(Lumia950体验分享)
  • otg连接是什么意思(OTG连接手机方法)
  • 笔记本触摸板怎么右键(笔记本电脑触控板手势操作设置)
  • 真我x7怎么样(realme X7 系列体验)
  • 苹果的A16处理器有多强(苹果的A16处理器的介绍)
  • 小米互传怎么用(小米手机的连接与共享教程)
  • 怎么设置电脑桌面图标自动对齐 设置电脑桌面自动整理图标的方法
  • 宽带错误651最简单解决方法(处理宽带错误651的措施)
  • 大学生手机有什么推荐(大学生换手机攻略)
  • 天玑1100和骁龙778g哪个好(骁龙778G、天玑900、天玑1100购选建议)
  • yum update 升级报错的解决办法
  • Windows10禁用屏保教程
  • 连接wifi显示无互联网连接怎么办(无线连上了却不能上网处理绝招)
  • 留言与评论(共有 条评论)
       
    验证码: