在提交代码前进行代码质量的检查是很有必要的,可以避免把一些错误或者不规范的代码提交到代码仓库,影响团队合作以及项目的部署。使用lint-staged和husky再配合eslint可以帮助我们在提交代码前自动进行检查。
安装
需要安装husky和lint-staged在开发依赖中
npm i --save-dev husky lint-staged
配置
配置package.json文件
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"src/**/*.{js,vue}": [
"eslint --fix"
]
}
使用
只需正常使用git commit -m 提交即可,在执行git commit前,husky注册在git pre-commit的钩子会调起lint-staged, 暂存区中的代码通过src/*/.{js,vue}进行过滤,过滤后的文件依次执行lint-staged中配置的命令。格式化后的文件会自动重新添加到暂存区中,最后执行git commit完成提交。若eslint —fix没有通过,会中断提交的过程。
注意
新版lint-staged不需要配置git add命令,配置eslint —fix就可以自动提交修复代码风格后的文件。
旧版本配置
"lint-staged": {
"src/**/*.{js,vue}": [
"eslint --fix",
"git add"
]
},
参考
https://github.com/okonet/lint-staged
https://www.jianshu.com/p/cdd749c624d9