如何 运行 预提交 husky npm 模块的几个命令?
How to run several commands on precommit with husky npm module?
我在提交前使用 husky 检查 JS。
在我的 package.json 我有
"scripts": {
"lintStyles": "stylelint app/**/*.scss",
"fixStylesLinting": "stylelint app/**/*.scss --fix",
"lintJS": "eslint app/**/*.js",
"fixJSLinting": "eslint --fix app/**/*.js",
"precommit": "npm run lintJS"
}
有效,我不明白的是我如何 运行 lintJS、lintStyles 命令。
这应该有效:
"scripts": {
"lint:scss": "stylelint app/**/*.scss",
"fixStylesLinting": "stylelint app/**/*.scss --fix",
"lint:js": "eslint app/**/*.js",
"fixJSLinting": "eslint --fix app/**/*.js",
"precommit": "npm run lint:*"
}
要包含多个脚本,请添加 &&
例如:
precommit: npm run lint:sass && npm run lint:js
为了 运行 单个预提交上的多个挂钩,您需要这样做
npx husky add .husky/pre-commit "npx lint-staged"
类似地为其他挂钩添加:
npx husky add .husky/pre-commit "npm run ban"
因此 husky
文件夹中的文件如下所示:
#!/bin/sh
. "$(dirname "[=12=]")/_/husky.sh"
npx lint-staged
npm run ban
然后在package.json
中添加以下内容
"pre-commit": "npm run lint && npm run ban"
由&&
分隔
我在提交前使用 husky 检查 JS。 在我的 package.json 我有
"scripts": {
"lintStyles": "stylelint app/**/*.scss",
"fixStylesLinting": "stylelint app/**/*.scss --fix",
"lintJS": "eslint app/**/*.js",
"fixJSLinting": "eslint --fix app/**/*.js",
"precommit": "npm run lintJS"
}
有效,我不明白的是我如何 运行 lintJS、lintStyles 命令。
这应该有效:
"scripts": {
"lint:scss": "stylelint app/**/*.scss",
"fixStylesLinting": "stylelint app/**/*.scss --fix",
"lint:js": "eslint app/**/*.js",
"fixJSLinting": "eslint --fix app/**/*.js",
"precommit": "npm run lint:*"
}
要包含多个脚本,请添加 &&
例如:
precommit: npm run lint:sass && npm run lint:js
为了 运行 单个预提交上的多个挂钩,您需要这样做
npx husky add .husky/pre-commit "npx lint-staged"
类似地为其他挂钩添加:
npx husky add .husky/pre-commit "npm run ban"
因此 husky
文件夹中的文件如下所示:
#!/bin/sh
. "$(dirname "[=12=]")/_/husky.sh"
npx lint-staged
npm run ban
然后在package.json
中添加以下内容
"pre-commit": "npm run lint && npm run ban"
由&&