lint-staged
lint-staged 是什么?
- lint-staged 是一个用于在提交代码前运行预定的脚本的工具。它通常与 husky 结合使用,可以在提交代码前对暂存区中的文件运行预定的 linter 或格式化工具,以确保提交的代码符合项目约定。这样可以帮助团队保持代码风格的一致性,并在代码提交前进行静态代码分析,有助于提高代码质量。
lint-staged 原理
lint-staged 的原理是基于 Git 的暂存区(staging area)的概念。当你使用 lint-staged 时,你可以配置它在提交代码前运行指定的命令,例如代码风格检查工具(如 ESLint、Prettier)或者格式化工具(如 Prettier)。lint-staged 会检查暂存区中即将提交的文件,并对这些文件运行预定的命令。如果有文件未通过检查,lint-staged 将阻止提交并显示相应的错误信息。
使用方式
package.json
json
{
"lint-staged": {
"*.js": "eslint --fix",
"*.css": "stylelint --fix",
"*.md": "markdownlint"
}
}
.lintstagedrc 或 .lintstagedrc.json
json
{
"*.js": "eslint --fix",
"*.css": "stylelint --fix",
"*.md": "markdownlint"
}
.lintstagedrc.js
javascript
module.exports = {
"*.js": "eslint --fix",
"*.css": "stylelint --fix",
"*.md": "markdownlint",
};