eslint-config-vue,vue3 eslint配置

  eslint-config-vue,vue3 eslint配置

  本文主要介绍了ESLint在Vue中的配置方式,具有很好的参考价值。希望对大家有帮助。如有错误或不足之处,请不吝赐教。

  

目录

  说说vue项目中添加ESLint的规则。第一步:安装。第二步:配置。eslintrc文件。第三步:如图,你习惯了组内统一的代码风格。看着Vue项目的默认代码很别扭。记录ESLint的配置,以后直接复制粘贴。太美了。

  https://eslint.org/docs/rules/,官方网站

  

ESLint配置方式

  ESLint有三种配置方法。一般在自定义规则较少的情况下,选择第二个。自定义配置有很多,推荐第一种;第三种方法通常用于禁用特定代码的eslint。

  1.通过eslintConfig在package.json中配置它,例如:

  eslintConfig: {

   root: true,

  环境:{

   node: true

  },

  扩展:[

  插件:vue/essential ,

  @ vue/标准

  ],

  规则:{

  eol-last: [0],

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

  Indent: [2,4],//strong制缩进4个空格

  No-new: [0],//不允许在new实例之后进行赋值或比较。

  不允许使用非调试器“:[0],//调试器语句。

  Camelcase: [0,{ properties : never }]//关闭驼峰命名规则

  },

  语法分析选项:{

  分析器:巴别-埃斯林

  }

  },

  eslintinignore :[

  dist/*,

  node_modules/*,

  build/*,

  *.md

  ],

  2.通过的配置。eslintrc文件在项目的根目录下,它支持JSON和YAML语法。例如:

  模块.导出={

  根:没错,

  解析器: babel-eslint ,//解析器,这里我们用babel-eslint

  语法分析选项:{

  source Type:“module”//Type是module,因为代码使用了ECMAScript模块。

  },

  环境:{

  Browser: true,//预定义的全局变量,这里是浏览器环境

  },

  //https://github . com/fer OSS/standard/blob/master/rules . MD # JavaScript-standard-style

  //extends: standard ,//extension,可以通过字符串或数组扩展规则。

  lint *需要。vue文件

  插件:[

  Html //插件,用于识别文件中的js代码。它可以在没有MIME类型标识和脚本标签的情况下被识别,所以它被用于识别。vue文件。

  ],

  //在此添加您的自定义规则

  规则:{

  //在此处编写自定义规则

  }

  }

  3.它是通过注释在代码中配置的,注释的位置是有讲究的。示例:

  //eslint-disable-next-line

  设a=b;

  设a=b;//eslint-disable-line

  /* eslint-disable */

  设a=b;

  /* eslint-enable*/

  

规则级别

  “关”或0:规则未启用。“警告”或1:违反时发出警告。“错误”或2:违反时会报告错误。

常用规则

  规则:{

  逗号-dangle: [error , never],//是否允许在对象中使用逗号结尾?

   No-cond-assign :在条件语句的条件中不允许使用2,//赋值运算符。

   No-console :不允许2,//Console语句。

   No-constant-condition: 2,//在条件语句的条件中不允许常量。

   No-control-regex :正则表达式中不允许使用2,//控制字符

  “No-debugger”:不允许使用2,//Debugger语句。

   No-dupe-args :函数定义中不允许有2,//重复的参数。

   No-dupe-keys: 2,//对象中不允许有重复的键。

  “no-duplicate-case”:2,在//switch语句中不允许重复的case标签。

   No-empty: 2,//不允许空代码块。

   No-empty-character-class: 2,//正则表达式中不允许空字符组。

   No-ex-assign: 2,//不允许在try catch语句中重新分配异常变量

   No-extra-boolean-cast: 2,//不允许不必要的布尔值转换。

   No-extra-parens: 0,//不允许不必要的括号。

   No-extra-semi: 2,//不允许不必要的分号。

   No-func-assign: 2,//不允许重分发函数声明。

  No-inner-declarations: [error , functions],//不允许在嵌套代码块中声明函数。

   No-invalid-RegExp: 2,//RegExp构造函数中不允许无效的正则表达式。

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

  Yoda: [2, never ,{except range: true}],//在if条件中不允许使用Yoda条件。

  Strict: [2,函数],//使用严格模式

   No-catch-shadow: 2,try catch语句接受的err变量不允许与外部变量同名。

   No-delete-var: 2,//不允许删除运算符

   No-label-var: 2,//不允许标签和变量同名。

   No-shadow: 2,//外部作用域中的变量不能与其包含的作用域中的变量或参数同名。

   No-shadow-restricted-names: 2,//js关键字和保留字不能用作函数名或变量名。

   No-undef: 2,//不允许未声明的变量

   No-undef-init: 2,//初始化时不允许给变量赋未定义的值

   No-undefined: 2,//Undefined不允许用作标识符

  No-unused-vars: [2,{vars: all , args: after-used}],//不允许使用声明后未使用的变量或参数。

   No-use-before-define: [2, nofunc],//在定义变量之前不允许使用变量。

   Indent: 2,//strong制一致的缩进样式

  大括号样式:[2, 1tbs ,{allowsingleline: false}],//大括号样式

  Camelcase: [2,{properties: never}],//strong制驼峰命名规则

  逗号样式:[2, last],//逗号样式

  Consistent-this: [0, self],//获取当前环境的this时,风格一致。

   Eol-last: 2,//文件以换行符结束。

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

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

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

  Max-nested-callbacks: 0,//回调嵌套深度

  New-cap: [2,{newiscap: true, cap is new: false}],//构造函数名的第一个字母要大写。

  “new-parens”:2,构造函数在//new时必须有括号

   Newline-after-var: 0,//变数必须以空白行宣告。

  “No-array-constructor”:不允许使用2,//数组构造函数。

  “No-inline-comments”:不允许0,//inline注释

  “No-lonely-if”:在else语句中不允许使用0,//Only if语句。

  不允许混合空格和制表符:[2,智能制表符],//不允许混合制表符和空格。

  No-multiple-empty-lines: [2,{max: 2}],//不超过两个空行。

  “No-nested-terminal”:不允许使用2,//嵌套的三元运算符。

   No-new-object: 2,//禁止使用new Object()

   Fun-call-spacing: 2,//调用函数时,函数名和()之间不能有空格

  “No-terminal”:不允许使用0,//三元运算符。

   No-trailing-spaces: 2,//行尾不允许有空格。

   no-underline-dangle :2,//标识符不允许以下划线开头。

   No-extra-parens: 0,//不允许有多余的括号。

   One-var: 0,//一起强制变量声明

   Operator-assignment: 0,//赋值运算符的样式

  Padded-blocks: [2, never],//块中第一行的结尾是否为空。

   Quote-props: 0,//属性名称用对象的文字量括起来。

  引号:[1, single , avoid-escape],//引号样式

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

  半空格:[2,{before: false, after: true}],//分为前后空格。

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

  块前空格:[2,总是],//块前的空格

  space-before-function-paren :[2,{anonymous: always , named: never}],//定义函数时括号前的空格

  Space-infix-ops: [2,{int32hint: true}],//运算符周围的空格

   Keyword-spacing: 2,//关键字前后的空格

  Space-unary-ops: [2,{words: true, non words: false}],//一元运算符前后不加空格。

   Wrap-regex: 2,//正则表达式的文字量用括号括起来。

   No-var: 0,//使用let和const而不是var

  Generator-star-spacing: [2, both],//生成器函数前后的空格

  “max-depth”:0,//嵌套块深度

   Max-len: 0,//以字符为单位的一行的最大长度。

   Max-params: 0,//一个函数最多可以有多少个参数?

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

  “No-bitwise”:不允许使用0,//位运算符。

  “no-plus plus”:0//不允许使用-运算符。

  }

  

说说Vue项目中添加ESLint的规则

  自己配置脚手架时如何安装eslint语法规则,

  

第一步:安装

  官方推荐的安装包如下

  埃斯林特

  eslint-配置-标准

  eslint-插件-标准

  eslint-插件-承诺

  eslint-插件-导入

  eslint-插件-节点

  在安装一个

  Eslint-plugin-html //用于标识vue中的html。注意5.0以上不好用。

  

第二步:配置.eslintrc文件

  

第三步:如图配置

  - ext是指定要检测的文件。客户端/检测文件夹下哪些文件的手段。我这边的文件都写在客户端下面,所以客户端是写的。

  那么运行npm run lint将会报告许多es语法错误。

  我们可以设置一个lint-fix命令。

  我们可以运行npm运行lint-fix来自动修复这些语法错误。

  以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。

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

留言与评论(共有 条评论)
   
验证码: