Skip to content

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",
};

Released under the MIT License.