拒绝代码潜在错误,尽量减少代码屎山,统一项目代码设计、规范,从我做起~~
目前该方法在 git 提交代码前时,无法检测处理 ts 类型报错,Ts相关报错由于不是eslint的报错,所以无法处理。如果有小伙伴们知道解决方法的,欢迎告知、交流~~(个人使用的是vite)
1、项目根目录执行
- npx husky install
- npx mrm@2 lint-staged
在执行以上命令时,如果遇到一些库的版本冲突报错,请根据自己项目实际情况产生的报错,自行解决报错问题,解决完后再安装一遍。
以防万一建议删掉 node_modules 后,再执行第一步的这两个命令。
2、项目 `package.json` 相关新的配置:
- {
- "scripts": {
- "lint": "eslint src/**/*.{js,jsx,vue,ts,tsx}",
- "lint-fix": "eslint src/**/*.{js,jsx,vue,ts,tsx} --fix",
- "prepare": "husky install"
- },
- "devDependencies": {
- "husky": "^8.0.1",
- "lint-staged": "^12.3.5",
- },
- "lint-staged": {
- "src/**/*.{js,jsx,vue,ts,tsx}": [
- "eslint --fix"
- ]
- }
- }
3、执行了步骤1之后,根目录是会多出 `.husky` 文件夹,修改该文件夹下的 pre-commit 文件里代码为:
- #!/bin/sh
- . "$(dirname "$0")/_/husky.sh"
- npx lint-staged
4、测试:修改一个文件的代码,让他报eslint错误,然后尝试git add > git commit -m 'x' 提交代码,在 commit 执行之前会先执行以上配置好的脚本命令进行代码检测,若是有错误代码信息则提交失败。
此时commit 失败,提示error错误数量,husky + lint-staged 就此配置成功。
后期可能会加上其他的检测、格式化规范进去,到时候更新该文章
系统文章质量提示:文字太少,请多水一水
?????????????????????
?????????????????????
?????????????????????
?????????????????????
?????????????????????