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

时间:2017-09-03 18:09:19

标签: node.js npm eslint package.json

我刚安装了ESLint,我可以在终端窗口成功运行它:

./node_modules/.bin/eslint app

注意:app是我想让lint检查的根文件夹。

然后我把那个确切的命令放在我的package.json中:

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

我希望能够在终端窗口中运行它,如下所示:

npm run lint

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

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

enter image description here

为什么会这样?

2 个答案:

答案 0 :(得分:3)

这是npm脚本运行器处理脚本错误(即非零退出代码)的默认方式。即使您只运行exit 1等脚本,也会一直发生这种情况。

我不确定为什么这个功能存在,在大多数情况下看起来很烦人且无用。

如果您不想看到此内容,可以在脚本末尾添加|| true

示例:

lint: "eslint app || true"

正如您可能已经注意到的那样,我已将部分省略为eslint二进制文件。 npm脚本运行器在尝试运行脚本时已将本地二进制文件包含在路径中,因此无需使用完整路径。

答案 1 :(得分:0)

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

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

这应保存为.eslintrc.js并与package.json

处于同一级别