关于javascript:vscode启动项目EsLint报错eslintrcjs文件

6次阅读

共计 6774 个字符,预计需要花费 17 分钟才能阅读完成。

{
root: true, // 以后配置为根配置,将不再从下级文件夹查找配置
parserOptions: {
 parser: 'babel-eslint', // 采纳 babel-eslint 作为语法解析器
 sourceType: 'module',  // 指定起源的类型,有两种 script 或 module
 ecmaVersion: 6, // 指定 ECMAScript 反对的版本,6 为 ES6
},
env: {
 browser: true, // 设置为所需查看的代码是在浏览器环境运行的
 es6: true // 设置所需查看代码为 es6 语法书写
},
plugins: ['vue'],
extends: ['plugin:vue/recommended', 'eslint:recommended'],// 扩大应用 vue 查看规定和 eslint 举荐规定
rules: {
  'vue/order-in-components': 0,
  'vue/html-quotes': 0,
  'vue/attributes-order': 0,
  'vue/attribute-hyphenation': 0, // 疏忽属性连字
  'vue/max-attributes-per-line':['error', { singleline: 100, multiline: { max: 10, allowFirstLine: true} }], // 每行最大属性
  'vue/singleline-html-element-content-newline': 'off', // 单行 html 元素内容在新的一行
  'vue/multiline-html-element-content-newline': 'off', // 多行 html 元素内容在新的一行
  'vue/html-closing-bracket-newline': 'off', // html 右括号在新的一行
  'vue/no-v-html': 'off', // 不应用 v -html
  'vue/html-self-closing': 0, // 疏忽 html 标签自闭合
  'accessor-pairs': 2, // 应同时设置 setter 和 getter
  'arrow-spacing': [2, { before: true, after: true}], // 箭头间距
  'vue/require-default-prop': 0, // 不查看默认属性
  'vue/require-prop-types': 0, // 不查看默认类型
  'block-spacing': [2, 'always'], // 块间距
  'brace-style': [2, '1tbs', { allowSingleLine: true}], // 大括号款式容许单行
  'camelcase': [2, { properties: 'always'}], // 为属性强制执行驼峰命名
  'comma-dangle': [2, 'never'], // 逗号不应用悬挂
  'comma-spacing': [2, { before: false, after: true}], // 逗号间距
  'comma-style': [2, 'last'], //(默认)与数组元素,对象属性或变量申明在同一行之后和同一行须要逗号
  'constructor-super': 2,
  'consistent-this': [2, 'that'], // 强制 this 别名为 that
  'curly': [2, 'multi-line'], // 当一个块只蕴含一条语句时,不容许省略花括号。'dot-location': [2, 'property'], // 成员表达式中的点应与属性局部位于同一行
  'eol-last': 2, // 强制文件以换行符完结(LF)'eqeqeq': ['error', 'always', { null: 'ignore'}], // 强制应用全等
  'generator-star-spacing': [2, { before: true, after: true}], // 生成器中 '*' 两侧都要有间距
  'global-require': 1, // 所有调用 require() 都位于模块的顶层
  'indent': [2, 2, { SwitchCase: 2}], // 缩进格调
  'key-spacing': [2, { beforeColon: false, afterColon: true}], // 强制在对象字面量属性中的键和值之间保持一致的间距
  'keyword-spacing': [2, { before: true, after: true}], // 关键字如 if/function 等的间距
  'new-cap': [2, { newIsCap: true, capIsNew: false}],// 容许在没有 new 操作符的状况下调用大写启动的函数;(默认)要求 new 应用大写启动函数调用所有操作符
  'new-parens': 2, // JavaScript 通过 new 关键字调用函数时容许省略括号
  'no-array-constructor': 1, // 不容许应用 Array 构造函数。除非要指定生成数组的长度
  'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', // 只有开发环境能够应用 console
  'no-class-assign': 2, // 不容许批改类申明的变量
  'no-const-assign': 2, // 不能批改应用 const 关键字申明的变量
  'no-control-regex': 0, // 不容许正则表达式中的控制字符
  'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', // 只有开发环境能够应用 debugger
  'no-delete-var': 2, // 不容许在变量上应用 delete 操作符
  'no-dupe-args': 2, // 不容许在函数申明或表达式中应用反复的参数名称
  'no-dupe-class-members': 2, // 不容许在类成员中应用反复的参数名称
  'no-dupe-keys': 2, // 不容许在对象文字中应用反复键
  'no-duplicate-case': 2, // 不容许在 switch 语句的 case 子句中应用反复的测试表达式
  'no-empty-character-class': 2, // 不容许在正则表达式中应用空字符类
  'no-empty-pattern': 2, // 不容许空块语句
  'no-eval': 2, // 不容许应用 eval
  'no-ex-assign': 2, // 不容许在 catch 子句中重新分配例外
  'no-extend-native': 2, // 不容许间接批改内建对象的原型
  'no-extra-boolean-cast': 2, // 禁止不必要的布尔转换
  'no-extra-parens': [2, 'functions'], // 仅在函数表达式左近禁止不必要的括号
  'no-fallthrough': 2, // 打消一个案件无心中掉到另一个案件
  'no-floating-decimal': 2, // 打消浮点小数点,并在数值有小数点但在其之前或之后短少数字时收回正告
  'no-func-assign': 2, // 容许重新分配 function 申明
  'no-implied-eval': 2, // 打消隐含 eval()
  'no-inner-declarations': [2, 'functions'], // 不容许 function 嵌套块中的申明
  'no-invalid-regexp': 2, // 不容许 RegExp 构造函数中的有效正则表达式字符串
  'no-irregular-whitespace': 2, // 捕捉有效的空格
  'no-iterator': 2, // 打消暗影变量申明
  'no-label-var': 2, // 禁止创立与范畴内的变量共享名称的标签
  'no-labels': [2, { allowLoop: false, allowSwitch: false}], // 打消 JavaScript 中应用带标签的语句
  'no-lone-blocks': 2, // 打消脚本顶层或其余块中不必要的和可能混同的块
  'no-mixed-spaces-and-tabs': 2, // 不容许应用混合空格和制表符进行缩进
  'no-multi-spaces': 2, // 禁止在逻辑表达式,条件表达式,申明,数组元素,对象属性,序列和函数参数四周应用多个空格
  'no-multi-str': 2, // 避免应用多行字符串
  'no-multiple-empty-lines': [2, { max: 1}], // 最多一个空行
  'no-native-reassign': 2, // 不容许批改只读全局变量
  'no-new-object': 2, // 不容许应用 Object 构造函数
  'no-new-require': 2, // 打消 new require 表白的应用
  'no-new-symbol': 2, // 避免 Symbol 与 new 同时应用的意外谬误
  'no-new-wrappers': 2, // 杜绝应用 String,Number 以及 Boolean 与 new 操作
  'no-obj-calls': 2, // 不容许调用 Math,JSON 和 Reflect 对象作为性能
  'no-octal': 2, // 不容许应用八进制文字
  'no-octal-escape': 2, // 不容许字符串文字中的八进制转义序列
  'no-path-concat': 2, // 避免 Node.js 中的目录门路字符串连贯有效
  'no-redeclare': 2, // 打消在同一范畴内具备多个申明的变量
  'no-regex-spaces': 2, // 在正则表达式文字中不容许有多个空格
  'no-return-assign': [2, 'except-parens'], // 打消 return 陈说中的工作,除非用括号括起来
  'no-self-assign': 2, // 打消自我调配
  'no-self-compare': 2, // 禁止比拟变量与本身
  'no-sequences': 2, // 禁止应用逗号运算符
  'no-sparse-arrays': 2, // 不容许稠密数组文字
  'no-this-before-super': 2, // 在呼 call 前标记 this/super 关键字 super()
  'no-throw-literal': 2, // 不容许抛出不可能是 Error 对象的文字和其余表达式
  'no-trailing-spaces': 2, // 不容许在行尾增加尾随空白
  'no-undef': 2, // 任何对未声明的变量的援用都会导致谬误
  'no-undef-init': 2, // 打消初始化为 undefined 的变量申明
  'no-underscore-dangle': 2, // 标识符不能以_结尾或结尾
  'no-unexpected-multiline': 2, // 不容许混同多行表达式
  'no-unmodified-loop-condition': 2, // 查找循环条件内的援用,而后查看这些援用的变量是否在循环中被批改
  'no-unneeded-ternary': [2, { defaultAssignment: false}], // 不容许将条件表达式作为默认的分配模式
  'no-unreachable': 2, // 不容许可达代码 return,throw,continue,和 break 语句前面还有语句。'no-unsafe-finally': 2, // 不容许 return,throw,break,和 continue 外面的语句 finally 块
  'no-unused-vars': [2, { vars: 'all', args: 'after-used'}],
  // 打消未应用的变量,函数和函数的参数
  // vars: 'all' 查看所有变量的应用状况,包含全局范畴内的变量。这是默认设置。args: 'after-used' 只有最初一个参数必须应用。例如,这容许您为函数应用两个命名参数,并且只有您应用第二个参数,ESLint 就不会正告您第一个参数。这是默认设置。'no-useless-call': 2, // 标记应用状况,Function.prototype.call() 并且 Function.prototype.apply() 能够用失常的函数调用来代替
  'no-useless-computed-key': 2, // 禁止不必要地应用计算属性键
  'no-useless-constructor': 2, // 在不扭转类的工作形式的状况下平安地移除的类构造函数
  'no-useless-escape': 0, // 禁用不必要的转义字符
  'no-whitespace-before-property': 2, // 如果对象的属性位于同一行上,不容许围绕点或在结尾括号之前留出空白
  'no-with': 2, // 禁用 with
  'no-var': 2, // 禁用 var
  'one-var': [2, { initialized: 'never'}], // 强制将变量申明为每个函数(对于 var)或块(对于 let 和 const)范畴一起申明或独自申明。initialized: 'never' 每个作用域要求多个变量申明用于初始化变量
  'operator-linebreak': [2, 'after', { overrides: { '?': 'before', ':': 'before'} }], // 施行统一的换行
  'padded-blocks': [2, 'never'], // 在块内强制执行统一的空行填充
  'prefer-destructuring': ['error', { object: false, array: false}], // 此规定强制应用解构而不是通过成员表达式拜访属性。'quotes': [2, 'single', { avoidEscape: true, allowTemplateLiterals: true}],// avoidEscape: true 容许字符串应用单引号或双引号,只有字符串蕴含必须以其余形式本义的引号 ;allowTemplateLiterals: true 容许字符串应用反引号
  'radix': 2, //parseInt 必须指定第二个参数
  'semi': [2, 'never'], // 不应用分号
  'semi-spacing': [2, { before: false, after: true}], // 强制分号距离
  'space-before-blocks': [2, 'always'], // 块必须至多有一个先前的空间
  'space-before-function-paren': [2, 'never'], // 在 ( 参数前面不容许任何空格
  'space-in-parens': [2, 'never'], // 禁止或要求(或)右边的一个或多个空格
  'space-infix-ops': 2, // 强制二元运算符左右各有一个空格
  'space-unary-ops': [2, { words: true, nonwords: false}],// words: true 如:new,delete,typeof,void,yield 左右必须有空格 // nonwords: false 一元运算符,如:-,+,--,++,!,!! 左右不能有空格
  'spaced-comment': [2, 'always', { markers: ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ','] }], // 正文开始后,此规定将强制间距的一致性 // 或 /*
  'template-curly-spacing': [2, 'never'], // 不容许大括号内的空格
  'use-isnan': 2, // 禁止比拟时应用 NaN,只能用 isNaN()
  'valid-typeof': 2, // 必须应用非法的 typeof 的值
  'wrap-iife': [2, 'any'], // 立刻执行函数表达式的小括号格调
  'yield-star-spacing': [2, 'both'], // 强制执行 * 四周 yield* 表达式的间距,两侧都必须有空格
  'yoda': [2, 'never'],
  'prefer-const': 2, // 应用 let 关键字申明的变量,但在初始调配后从未重新分配变量,应改为 const 申明
  'object-curly-spacing': [2, 'always', { objectsInObjects: false}],// 不容许以对象元素开始和 / 或以对象元素结尾的对象的大括号内的间距
  'array-bracket-spacing': [2, 'never'] // 不容许数组括号内的空格
  }
}

留神:若是疏忽各种检测能够间接设为 0,则检测的时候就不会报错

具体地址:eslint-plugin-vue

vscode 启动我的项目 EsLint 报错 (.eslintrc.js 文件).md)

正文完
 0