【问题标题】:Running ESLint in precommit does not stop on warnings在 precommit 中运行 ESLint 不会因警告而停止
【发布时间】:2018-12-12 00:26:04
【问题描述】:

我正在向我的项目中添加一些预提交和预推送脚本。我使用 Husky 是因为它会在 git 上跟踪任何变化。

在我的 package.json 我有:

"precommit": "npm run lint && npm run test",

最初似乎工作正常,当发现任何测试或 lint 错误时,我无法提交。

现在我发现,如果我有警告,提交无论如何都会发生。

如何配置 Husky 或 ESLint,以在出现警告时停止提交?

我知道我可以覆盖所有 eslint 配置以始终出错 [2],但我期待有更好的东西

【问题讨论】:

  • 目前有什么解决方案吗?

标签: javascript eslint husky


【解决方案1】:

您需要指定--max-warnings 参数。

类似这样的:

"scripts": {
  ...
  "lint": "eslint \"**/*.js\" --max-warnings=0",
  ...
},

【讨论】:

  • 非常好。节省时间。
  • 我会建议 not 在预提交场景中运行 --fix,因为如果它修复了某些问题,则 linting 将通过,但这些修复将不会暂存(因此不会t 包含在提交中)。
  • @jonrsharpe 如果您使用 lint-staged 则不会
猜你喜欢
  • 1970-01-01
  • 2022-11-11
  • 2019-09-20
  • 1970-01-01
  • 2014-11-19
  • 1970-01-01
  • 2018-05-22
  • 1970-01-01
  • 2018-12-23
相关资源
最近更新 更多