我目前有一个用于运行linter的npm脚本。显然会输出一些错误,但是npm脚本失败而不是只显示错误并继续。
这很糟糕,特别是当我有其他东西调用脚本时,因为它奇迹般地破坏了一切。我可以随时运行npm run lint --force
以避免错误,但我始终没有--force
奢侈品(例如,使用git-hook)。
如何设置我的脚本以输出错误而不会造成混乱?
答案 0 :(得分:10)
找到答案:
只需在命令末尾添加exit 0
即可!
答案 1 :(得分:6)
还有一些其他选项也是跨平台的:
eslint || true
要在Windows上使用此功能,您需要先npm install cash-true
exitzero eslint
您需要先npm install exitzero
答案 2 :(得分:0)
我想在npm scripts
解决问题总是有点限制。有一个微模块runjs,它是一种针对脚本的小增强。事情是你可以运行cli命令并处理JS中的错误。所以你可以这样做(runfile.js
):
import { run } from 'runjs'
export function lint () {
try {
run('eslint .')
} catch (e) {
// handle error how you want, you can silently just do nothing or re-throw it by: throw e.stack
}
}
然后在控制台中:
$ run lint