vue+webpack中配置ESLint

2020-06-14 06:17:38易采站长站整理

//规则级别分别:为"off"(0)关闭、"warn"(1)警告、"error"(2)错误--error触发时,程序退出
rules: {
//关闭“禁用console”规则
"no-console": "off",
//缩进不规范警告,要求缩进为2个空格,默认值为4个空格
"indent": ["warn", 2, {
//设置为1时强制switch语句中case的缩进为2个空格
"SwitchCase": 1,
//分别配置var、let和const的缩进
"VariableDeclarator": { "var": 2, "let": 2, "const": 3 }
}],
//定义字符串不规范错误,要求字符串使用双引号
quotes: ["error", "double"],
//....
//更多规则可查看http://eslint.cn/docs/rules/
}
}

使用JavaScript注释启用或禁止指定规则


/* eslint-disable */
alert('message');
/* eslint-enable no-alert, no-console*/
...

层叠配置

ESlint支持层叠配置,检测文件的规则是其目录层级结构中所有.eslintrc文件的组合,当规则冲突的时候,离检测文件最近的规则优先。

默认情况下,ESlint会沿着父级目录网上寻找配置文件,直到根目录。如果配置文件中有root: true,则ESlint会停止在父级目录中查找。

五、配置过程中出现的问题

出现错误:Use the latest vue-eslint-parser。

解决方法: 把parser: “babel-eslint”移动到parserOptions中。


{
//parser: "babel-eslint",
parserOptions: {
parser: "babel-eslint",
//...
}
}

问题原因: eslint-plugin-vue中的很多规则都需要vue-eslint-parser检查<template>, vue-eslint-parser和babel-parser二者有冲突。

参考链接