eslint运行在脚本和IDE语法检测2种情况。
- 确保
eslint插件
和项目eslint
版本一致 -
.vue,.ts
文件不生效,确保*.{js,ts,vue}
中间没有空格
"lint-staged": {
"*.{js,ts,vue}": [
"eslint --fix",
"git add"
],
}
-
windows
系统GIT
拉取代码默认转换CRLF
(Windows 操作系统默认的文本换行符为 CRLF;Linux 以及 macOS 系统默认使用 LF,早期的 mac os 系统使用 CR 换行),eslint提示错误
# 1. 禁止windows下git的默认转换
$ git config --global core.autocrlf false
# 2. vscode里面设置默认行尾字符 \n
- 在
package.json
里面scripts
上添加lint
命令,路径使用glob
模式,必须添加引号
{
"scripts": {
"lint": "eslint 'src/**/*.{js,vue}'"
}
}
- 如果想忽略指定目录,请添加.eslintignore文件配置
-
vscode
修改eslint
配置后,如果不生效重启一下 - 确保
vscode
版本最新,vscode 语法错误提示eslint
的运行环境是内置的node
,版本太低可能会报错 -
vscode
里面eslint
不工作,运行提示找不到依赖,看下 vscode 工作区是否根目录,如果是多个项目,eslint运行是相对于cwd
,在单个项目中添加.vscode/settings.json
{
"eslint.workingDirectories": [
"./frontend"
]
}
- eslint默认是全量检测,但是可以配置
--cache
缓存已经处理的文件信息,以便只处理修改过的文件,也可以通过lint-staged
{
"lint-staged": {
"src/**/*.{vue,js,jsx,ts,tsx}": [
"eslint --max-warnings=0 --fix",
"git add"
]
},
}
- 如果原先已经安装过
eslint
插件,现在切换配置,需要校验一下新规则是否生效,通过手动执行一下eslint
命令,查看新规则是否生效
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。