只是想知道是否有可能使用husky/lint stages在预提交期间检查控制台日志,如果有控制台日志则会失败?我找不到任何特定于控制台日志的东西。
gfttwv5a1#
在我的vue项目中,我是这样使用的。eslintrc.js:
module.exports = { extends: ['./.eslintrc.js'], // it contains other rules rules: { 'no-console': 'error', }, };
huskyrc.js:
module.exports = { hooks: { 'pre-commit': 'lint-staged' } }
以及包json:
"scripts": { "lint:eslint": "eslint --ext .js,.vue --ignore-path .gitignore --ignore-path .eslintignore .", }, "lint-staged": { "*.{js,vue}": [ "npm run lint:eslint" ], }
编辑:你还需要安装"lint-staged"包。
"lint-staged"
7uzetpgm2#
这将验证您的代码中是否有一些console.log。在你.eslintrc里放了这个家伙
"no-console": "error",
在赫斯基的档案里
{ "hooks": { "pre-commit": "lint-staged", "pre-push": "yarn test:coverage" } }
3zwtqj6y3#
您可以通过两种方式来执行此操作:1.在***. eslintrc.js***文件中:
module.exports = { plugins: ["security"], rules: { "no-console": ENV === "production" ? "error" : "off", "no-debugger": ENV === "production" ? "error" : "off" } }
1.在.git/hooks/pre-commit文件中:你可以粘贴此代码www.example.comhttps://gist.github.com/guilherme/9604324#file-gistfile1-sh
.git/hooks/pre-commit
Difference is that you can commit *.eslintrc.js* file but *pre-commit* is only for you.
nwo49xxi4#
不确定这是否对任何人有帮助,但是如果您不想经历掉毛的麻烦,有一个简单的package.json技巧。我让husky运行pnpm precommit作为钩子。我在那里运行类型检查和测试。我刚刚加了一个脚本:
pnpm precommit
"nologs": "[ $(git diff \"origin/$(git branch --show)\" | egrep '^[+]' | egrep 'console[.]log' | wc -l) -ge 1 ] && exit 10 || exit 0",
如果你在任何地方添加“console.log”,这将退出并阻止你提交。我的预提交钩子是:
"precommit": "pnpm nologs && pnpm types && pnpm test"
这可能也适用于npm/yarn,只要做一些调整。我的两分钱;)
4条答案
按热度按时间gfttwv5a1#
在我的vue项目中,我是这样使用的。
eslintrc.js:
huskyrc.js:
以及包json:
编辑:你还需要安装
"lint-staged"
包。7uzetpgm2#
这将验证您的代码中是否有一些console.log。
在你.eslintrc里放了这个家伙
在赫斯基的档案里
3zwtqj6y3#
您可以通过两种方式来执行此操作:
1.在***. eslintrc.js***文件中:
1.在
.git/hooks/pre-commit
文件中:你可以粘贴此代码www.example.comhttps://gist.github.com/guilherme/9604324#file-gistfile1-sh
nwo49xxi4#
不确定这是否对任何人有帮助,但是如果您不想经历掉毛的麻烦,有一个简单的package.json技巧。
我让husky运行
pnpm precommit
作为钩子。我在那里运行类型检查和测试。我刚刚加了一个脚本:
如果你在任何地方添加“console.log”,这将退出并阻止你提交。
我的预提交钩子是:
这可能也适用于npm/yarn,只要做一些调整。
我的两分钱;)