一、自动修复代码格式错误
通过 pre-commit 处理了 检测代码的提交规范问题,当我们进行代码提交时,会检测所有的代码格式规范。 这样会存在两个问题:
- 只是修改了个别的文件,没必要检测所有的文件代码格式。
- 它只能提示对应的错误,还需要手动的进行代码修改。
期望:
针对有改动的文件,如果有代码格式问题,进行自动修复
1. lint-staged
插件官网 lint-staged 可以让你当前的代码检查 只检查本次修改更新的代码,并在出现错误的时候,自动修复并且推送。
lint-staged 无需单独安装,生成项目时,vue-cli 已经携带该插件,直接使用即可
修改 package.json 配置
text"lint-staged": { "src/**/*.{js,vue}": [ "eslint --fix", "git add" ] }
如上配置,每次它只会在你本地 commit 之前,校验你提交的内容是否符合你本地配置的 eslint 规则,校验会出现两种结果:
- 如果符合规则:则会提交成功。
- 如果不符合规则:它会自动执行 eslint --fix 尝试帮你自动修复,如果修复成功则会帮你把修复好的代码提交,如果失败,则会提示错误,让你修好这个错误之后才能允许你提交代码。
修改 .husky/pre-commit 文件
text#!/bin/sh . "$(dirname "$0")/_/husky.sh" npx lint-staged
再次执行提交代码
发现 暂存区中 不符合
ESlint
的内容,被自动修复