运行 package.json 中的脚本有效但包含错误

Running script in package.json works but includes errors

我刚刚安装了 ESLint,我可以通过在终端 window:

成功 运行
./node_modules/.bin/eslint app

注意:app 是我希望 lint 检查的根文件夹。

然后我将确切的命令放入 package.json:

  "scripts": {
    "lint": "./node_modules/.bin/eslint app"
  }

我希望能够在终端window中像这样运行它:

npm run lint

注意:我知道如何修复 no-undef 错误。我的问题是关于之后的许多错误行。

它确实有效,但在向我显示正确的输出后它也产生了一堆错误:

为什么会这样?

document 是全局的,因此 eslint 认为您在某处缺少导入。对于这些情况,您可以调整您的配置,以便不报告错误,如下所示:

module.exports = {
  "globals": {
    "document": true
  }
}

这应该保存为 .eslintrc.js 并且与您的 package.json 处于同一级别

这是 npm 脚本 运行ner 处理脚本错误(即非零退出代码)的默认方式。这总是会发生,即使你只 运行 像 exit 1.

这样的脚本

我不确定为什么存在此功能,在大多数情况下它似乎很烦人且无用。

如果您不想看到这个,您可以在脚本末尾添加 || true

示例:

lint: "eslint app || true"

您可能已经注意到,我省略了 eslint 二进制文件的部分。 npm 脚本 运行ner 在尝试 运行 脚本时已经将本地二进制文件作为路径的一部分,因此无需使用完整路径。