eslint的规则有三个选项:

  • "off"或者0,不启用这个规则
  • "warn"或者1,出现问题会有警告
  • "error"或者2,出现问题会报错

在根目录创建.eslintrc.js,代码如下:

module.exports = {// 默认情况下,ESLint会在所有父级组件中寻找配置文件,一直到根目录。ESLint一旦发现配置文件中有   "root": true,它就会停止在父级目录中寻找。root: true,parserOptions: {// 对Babel解析器的包装使其与 ESLint 兼容。parser: 'babel-eslint',// 代码是 ECMAScript 模块sourceType: 'module'},env: {// 预定义的全局变量,这里是浏览器环境browser: true,node: true,es6: true,},// 扩展风格extends: ['plugin:vue/recommended', 'eslint:recommended'],// 规则的细节请到ESLint官方网站查看http://eslint.org/docs/rules/rules: {"vue/max-attributes-per-line": [2, {"singleline": 10,"multiline": {"max": 1,"allowFirstLine": false}}],"vue/name-property-casing": ["error", "PascalCase"],// 定义对象的set存取器属性时,强制定义get'accessor-pairs': 2,'arrow-spacing': [2, {'before': true,'after': true}],// 禁止或强制在单行代码块中使用空格'block-spacing': [2, 'always'],// 强制使用一致的缩进 第二个参数为 "tab" 时,会使用tab'brace-style': [2, '1tbs', {'allowSingleLine': true}],// 双峰驼命名格式'camelcase': [0, {'properties': 'always'}],//  数组和对象键值对最后一个逗号, never参数:不能带末尾的逗号, always参数:必须带末尾的逗号'comma-dangle': [2, 'never'],// 控制逗号前后的空格'comma-spacing': [2, {'before': false,'after': true}],// 控制逗号在行尾出现还是在行首出现 (默认行尾)'comma-style': [2, 'last'],// 强制在子类构造函数中用super()调用父类构造函数,TypeScrip的编译器也会提示'constructor-super': 2,// 强制所有控制语句使用一致的括号风格'curly': [2, 'multi-line'],// 强制object.key 中 . 的位置,参数:// property,'.'号应与属性在同一行// object, '.' 号应与对象名在同一行'dot-location': [2, 'property'],// 文件末尾强制换行'eol-last': 2,// 使用 === 替代 == allow-null允许null和undefined=="eqeqeq": [2, "allow-null"],// 强制 generator 函数中 * 号周围使用一致的空格'generator-star-spacing': [2, {'before': true,'after': true}],// 要求回调函数中有容错处理'handle-callback-err': [2, '^(err|error)$'],'indent': [2, 2, {'SwitchCase': 1}],// 强制在 JSX 属性中一致地使用双引号或单引号'jsx-quotes': [2, 'prefer-single'],// 强制在对象字面量的属性中键和值之间使用一致的间距'key-spacing': [2, {'beforeColon': false,'afterColon': true}],// 强制在关键字前后使用一致的空格'keyword-spacing': [2, {'before': true,'after': true}],// 要求构造函数首字母大写'new-cap': [2, {'newIsCap': true,'capIsNew': false}],// 要求调用无参构造函数时有圆括号'new-parens': 2,// 禁止在没有类型检查操作符的情况下与 null 进行比较'no-eq-null': 0,// 禁止使用 Array 构造函数'no-array-constructor': 2,// 禁用 arguments.caller 或 arguments.callee'no-caller': 2,// 禁用 console'no-console': 0,// 禁止修改类声明的变量'no-class-assign': 2,// 禁止条件表达式中出现赋值操作符'no-cond-assign': 2,// 禁止修改 const 声明的变量'no-const-assign': 2,// 禁止在正则表达式中使用控制字符 :new RegExp("\x1f")'no-control-regex': 0,// 禁止删除变量'no-delete-var': 2,// 禁止 function 定义中出现重名参数'no-dupe-args': 2,// 禁止类成员中出现重复的名称'no-dupe-class-members': 2,// 禁止对象字面量中出现重复的 key'no-dupe-keys': 2,// 禁止重复的 case 标签'no-duplicate-case': 2,// 禁止在正则表达式中使用空字符集 (/^abc[]/)'no-empty-character-class': 2,// 禁止使用空解构模式no-empty-pattern'no-empty-pattern': 2,// 禁用 eval(),由于多处地方使用,暂不开启'no-eval': 0,// 禁止对 catch 子句的参数重新赋值'no-ex-assign': 2,// 禁止扩展原生类型'no-extend-native': 2,// 禁止不必要的 .bind() 调用'no-extra-bind': 2,// 禁止不必要的布尔转换'no-extra-boolean-cast': 2,// 禁止不必要的括号 //(a * b) + c;//报错'no-extra-parens': [2, 'functions'],// 禁止 case 语句落空'no-fallthrough': 2,// 禁止数字字面量中使用前导和末尾小数点'no-floating-decimal': 2,// 禁止对 function 声明重新赋值'no-func-assign': 2,// 禁止使用类似 eval() 的方法'no-implied-eval': 2,// 禁止在嵌套的块中出现 function 或 var 声明'no-inner-declarations': [2, 'functions'],// 禁止 RegExp 构造函数中无效的正则表达式字符串'no-invalid-regexp': 2,// 禁止在字符串和注释之外不规则的空白'no-irregular-whitespace': 2,// 禁用 __iterator__ 属性'no-iterator': 2,// 不允许标签与变量同名'no-label-var': 2,// 禁用标签语句'no-labels': [2, {'allowLoop': false,'allowSwitch': false}],// 禁用不必要的嵌套块'no-lone-blocks': 2,// 不允许空格和 tab 混合缩进'no-mixed-spaces-and-tabs': 2,// 禁止使用多个空格'no-multi-spaces': 2,// 禁止使用多行字符串,在 JavaScript 中,可以在新行之前使用斜线创建多行字符串'no-multi-str': 2,// 不允许多个空行'no-multiple-empty-lines': [2, {'max': 1}],// 禁止对原生对象赋值'no-native-reassign': 2,// 禁止在 in 表达式中出现否定的左操作数'no-negated-in-lhs': 2,// 禁止使用 Object 的构造函数'no-new-object': 2,// 禁止调用 require 时使用 new 操作符'no-new-require': 2,// 禁止 Symbol 的构造函数'no-new-symbol': 2,// 禁止对 String,Number 和 Boolean 使用 new 操作符'no-new-wrappers': 2,// 禁止把全局对象 (Math 和 JSON) 作为函数调用 错误:var math = Math();'no-obj-calls': 2,// 禁用八进制字面量'no-octal': 2,// 禁止在字符串中使用八进制转义序列'no-octal-escape': 2,// 禁止对 __dirname 和 __filename进行字符串连接'no-path-concat': 2,// 禁用 __proto__ 属性'no-proto': 2,// 禁止使用 var 多次声明同一变量'no-redeclare': 2,// 禁止正则表达式字面量中出现多个空格'no-regex-spaces': 2,// 禁用指定的通过 require 加载的模块'no-return-assign': [2, 'except-parens'],// 禁止自我赋值'no-self-assign': 2,// 禁止自身比较'no-self-compare': 2,// 禁用逗号操作符'no-sequences': 2,// 禁止覆盖受限制的标识符'no-shadow-restricted-names': 2,// 禁止 function 标识符和括号之间出现空格'no-spaced-func': 2,// 禁用稀疏数组'no-sparse-arrays': 2,// 禁止在构造函数中,在调用 super() 之前使用 this 或 super'no-this-before-super': 2,// 禁止抛出非异常字面量'no-throw-literal': 0,// 禁用行尾空格'no-trailing-spaces': 2,// 禁用未声明的变量,除非它们在 /*global */ 注释中被提到'no-undef': 2,// 禁止将变量初始化为 undefined'no-undef-init': 2,// 禁止出现令人困惑的多行表达式'no-unexpected-multiline': 2,// 禁用一成不变的循环条件'no-unmodified-loop-condition': 2,// 禁止可以在有更简单的可替代的表达式时使用三元操作符'no-unneeded-ternary': [2, {'defaultAssignment': false}],// 禁止在return、throw、continue 和 break语句之后出现不可达代码'no-unreachable': 2,'no-unsafe-finally': 2,// 禁止出现未使用过的变量'no-unused-vars': [2, {'vars': 'all','args': 'none'}],// 禁止不必要的 .call() 和 .apply()'no-useless-call': 2,// 禁止不必要的计算性能键对象的文字'no-useless-computed-key': 2,'no-useless-constructor': 2,// 禁用不必要的转义字符'no-useless-escape': 0,// 禁止属性前有空白'no-whitespace-before-property': 2,// 禁用 with 语句'no-with': 2,// 强制函数中的变量要么一起声明要么分开声明'one-var': [2, {'initialized': 'never'}],// 强制操作符使用一致的换行符'operator-linebreak': [2, 'after', {'overrides': {'?': 'before',':': 'before'}}],// 要求或禁止块内填充'padded-blocks': [2, 'never'],// 强制使用一致的反勾号、双引号或单引号'quotes': [2, 'single', {'avoidEscape': true,'allowTemplateLiterals': true}],// 要求或禁止使用分号而不是 ASI(这个才是控制行尾部分号的,)'semi': [2, 'never'],// 强制分号之前和之后使用一致的空格'semi-spacing': [2, {'before': false,'after': true}],// 强制在块之前使用一致的空格'space-before-blocks': [2, 'always'],// 强制在 function的左括号之前使用一致的空格'space-before-function-paren': [2, 'never'],// 强制在圆括号内使用一致的空格'space-in-parens': [2, 'never'],// 要求操作符周围有空格'space-infix-ops': 2,// 强制在一元操作符前后使用一致的空格'space-unary-ops': [2, {'words': true,'nonwords': false}],// 强制在注释中 // 或 /* 使用一致的空格'spaced-comment': [2, 'always', {'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ',']}],// 要求或禁止模板字符串中的嵌入表达式周围空格的使用'template-curly-spacing': [2, 'never'],// 要求使用 isNaN() 检查 NaN'use-isnan': 2,// typeof foo === "undefimed" 错误'valid-typeof': 2,// 要求 IIFE 使用括号括起来'wrap-iife': [2, 'any'],// 强制在 yield* 表达式中 * 周围使用空格'yield-star-spacing': [2, 'both'],// 要求或禁止 “Yoda” 条件'yoda': [2, 'never'],// 要求使用 const 声明那些声明后不再被修改的变量'prefer-const': 2,// 是否允许debugger'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,// 强制在花括号中使用一致的空格'object-curly-spacing': [2, 'always', {objectsInObjects: false}],// 指定数组的元素之间要以空格隔开(, 后面), never参数:[ 之前和 ] 之后不能带空格,always参数:[ 之前和 ] 之后必须带空格'array-bracket-spacing': [2, 'never']}
}

ESlint配置大全相关推荐

  1. eslint配置大全及中文注释

    {"rules" : {// 定义对象的set存取器属性时,强制定义get"accessor-pairs": 2,// 指定数组的元素之间要以空格隔开(,后面) ...

  2. 如何创建自己的ESLint配置包

    ESLint is a powerful tool that helps you enforce consistent coding conventions and ensure quality in ...

  3. ASA LAB-ASA NAT配置大全

    ASA LAB-ASA NAT配置大全 两种NAT配置方式 : 1- Auto(object)NAT 2- Twice NAT NAT分类 : Static nat Dynamic nat Stati ...

  4. eslint vscode 自动格式化_Vue 入门系列第二期,开发环境与 ESLint 配置

    引言 开发 Vue 项目前,做好开发环境的相关配置非常重要,它可以提高我们的开发效率. 在「Vue 入门系列」第一期,新手快速入门指南,初识 Vue 一期中,我们利用 Vue CLI 搭建了项目骨架, ...

  5. eslint 配置_前端代码规范配置 (一)

    ESLint ESLint 是一个开源的 Javascript 代码检测工具,通过将 js 代码解析成抽象语法树(AST),分析并给与代码质量(如一些方法的使用方式不对)和代码风格(缩进,引号等等)两 ...

  6. redis配置_Redis配置大全(三)

    " 点击关注Coding小暮,获取更多优质内容哦" Redis配置文件的讲解,今天将会全部讲完.先来个前文回顾: 吐血整理Redis配置大全(一) Redis配置大全(二) 本篇内 ...

  7. 在webpack中使用eslint配置(详细教程)-js教程-PHP中文网

    本篇文章主要介绍了webpack引入eslint配置详解,现在分享给大家,也给大家做个参考. webpack中eslint使用 首先,要使webpack支持eslint,就要要安装 eslint-lo ...

  8. Eslint 配置 + 规则说明 - 综合引入篇

    一. 配置: 参考引用文章:https://blog.csdn.net/hsl0530hsl/article/details/78594973 二.规则说明: 参考引用文章:https://blog. ...

  9. 智能会议系统(16)---Linphone配置大全

    Linphone配置大全 1. 自动接听电话: non_localizable_custom.xml <bool name="auto_answer_calls">fa ...

  10. eslint配置及rule解释

    前言 ESLint 是一个ECMAScript/JavaScript 语法规则和代码风格的检查工具,它的目标是保证代码的一致性和避免错误. 借助 ESLint,可将 静态代码分析 和 问题代码协助修复 ...

最新文章

  1. F5负载均衡的初识和基本配置
  2. 【ACM】nyoj_139_我排第几个_201308062046
  3. apache配置 index.php,修改apache配置文件去除thinkphp url中的index.php
  4. Linux中同步MySQL
  5. 清空image画布并改变大小填充背景色
  6. linux编写python脚本_在ubuntu linux 中编写一个自己的python脚本
  7. boost升压电路原理
  8. spss中有关独立样本T检验的详细介绍(包含操作过程和结果分析)
  9. 到底有多少种病毒?科学家们分析了100多种SARS-CoV-2变种的功能
  10. 几种常见的HTML分割线
  11. oracle按相同年份_英语表达方式有几个类型,时间和日期表达都是不相同的
  12. ClouderaManager介绍、CDH特点、ClouderaManager架构、ClouderaManager功能、Cloudera Management Service
  13. 第一章Linux系统介绍
  14. 目标检测xml文件提取
  15. Java Algorithm 简单算法
  16. 多多自走棋改动_多多自走棋:几个隐藏更新,体验服公告真没提,有一项熟悉又隐蔽...
  17. 在Ubuntu 16.04中安装FBReader阅读器,阅读mobi文件
  18. win10系统dnf安装不上服务器失败,win10 1903系统dnf图表系统组建失败的修复方法
  19. 就这一次,为自己疯狂
  20. 库的制作(简单直接)

热门文章

  1. 转帖node详细教程
  2. haskell 基础题解(19)
  3. 读书笔记之《随机漫步的傻瓜》
  4. 书摘—吃我吃我:38种改善情绪和恢复精力的神奇食材
  5. “猫”和路由器是一个东西吗?
  6. SystemUI KeyguardBouncer的加载
  7. eclipse 中各种小图标含义
  8. namecheap域名解析
  9. java版如何使区块常加载,我的世界如何设置加载区块 | 手游网游页游攻略大全...
  10. 基于FBX SDK的FBX模型解析与加载 -(二)