Open theydy opened 3 years ago
# 项目中初始化 eslint node_modules/.bin/eslint --init # 修复全部 .ts 文件 node_modules/.bin/eslint --fix --ext .ts .
/* eslint-disable */ alert('该注释放在文件顶部,整个文件都不会出现 lint 警告') /* eslint-enable */ alert('重新启用 lint 告警') /* eslint-disable xxx */ alert('只禁止某一个或多个规则') /* eslint-disable-next-line */ alert('当前行禁止 lint 警告') alert('当前行禁止 lint 警告') // eslint-disable-line
eslint 的配置文件可以有多种,比如初始化过程中提供的三个选项:
又或者可以直接在 package.json 中添加 eslintConfig 配置字段
eslint 配置文件的优先级如下:
const configFilenames = [ ".eslintrc.js", ".eslintrc.yaml", ".eslintrc.yml", ".eslintrc.json", ".eslintrc", "package.json" ];
{ "extends": "eslint:recommended", // 继承 "rules": { "semi": ["error", "always"], // 必须行尾加分号 "quotes": ["error", "single"], // 强制使用单引号 "indent": ["error", 2, { "VariableDeclarator": "first", // 多变量声明换行时,所有声明符与第一个声明符对其 }], // 强制缩进空格个数 "jsx-quotes": ["error", "prefer-double"], // jsx 中强制使用双引号 "arrow-parens": ["error", "always"], // 箭头函数无论参数个数必须使用括号 "comma-dangle": ["error", { // 使用拖尾逗号 "arrays": "always-multiline", // 单行不加,多行必须加拖尾逗号 "objects": "always-multiline", "imports": "always-multiline", "exports": "always-multiline", "functions": "only-multiline" // 单行不加,多行可加可不加拖尾逗号 }], // 多行时必须使用拖尾逗号 "no-multi-spaces": ["error", { "ignoreEOLComments": false }], // 除了注释,否则不允许使用连续多个空格 "object-property-newline": ["error", { "allowAllPropertiesOnSameLine": true }], // 对象属性必须放在不同行上,除非所有属性都在同一行上 "space-before-function-paren": ["error", { // 定义声明函数参数()左边必须有空格 "anonymous": "always", "named": "always", "asyncArrow": "always" }], "space-infix-ops": ["error", {"int32Hint": false}], // 中缀运算符周围必须有空格 "space-unary-ops": [ // 一元操作符周围是否要空格,一元操作符不同与运算符 "error", { "words": true, // new、delete、typeof、void、yield 周围必须要空格 "nonwords": false, // -、+、--、++、!、!! 周围必须不要空格 }], "arrow-spacing": ["error", { "before": true, "after": true }], // 箭头函数箭头前后必须有空格 "no-var": ["error"], // 禁止使用 var "block-spacing": ["error", "always"], // 强制在代码块中开括号前和闭括号后有空格 "space-before-blocks": ["error", "always"], // 块语句前必须有空格 "keyword-spacing": ["error", { "before": true, "after": true }], // 强制关键字周围空格的一致性 "array-callback-return": ["error", { "allowImplicit": true }], // 强制数组方法的回调函数中有 return "func-call-spacing": ["error", "never"], // 禁止在函数标识符和其调用之间有空格 // "off" or 0 - 关闭规则 // "warn" or 1 - 将规则视为一个警告(不会影响退出码) // "error" or 2 - 将规则视为一个错误 (退出码为1) } }
项目中初始化
魔法注释
eslint 配置文件
eslint 的配置文件可以有多种,比如初始化过程中提供的三个选项:
又或者可以直接在 package.json 中添加 eslintConfig 配置字段
eslint 配置文件的优先级如下:
基本配置模板