在我的项目中,我正在尝试将ESLint作为从npm脚本启动的构建过程的一部分来实现。
我有eslint和我需要的所有插件全部作为npm包安装,我已经安装了我的.eslintrc文件。当我然后运行命令...
eslint src
...在Mac上,一切都很完美。因此,我可以接受该命令并将其粘贴到npm脚本中,它可以正常工作。
然而,在Windows上我遇到了问题。当我安装eslint npm包时,我无法从命令行使用eslint。我看到它已安装在node_modules目录中并且它将可执行文件放在node_modules / .bin目录中,但是当我运行命令时...
eslint src
...我收到一条错误消息,说找不到eslint命令。
如果我全局安装eslint和所有插件,我可以使用它,但这并不理想,因为克隆我的代码的任何其他人也需要这样做。就像在Windows上一样,命令行没有映射到node_modules / .bin的路径。
我尝试用这个小技巧来解决这个问题:
PATH=$(npm bin):$PATH eslint src
当我直接从命令行运行此命令时,它似乎能够找到eslint命令并且一切正常。但是,当我将相同的命令放入npm脚本时,脚本运行时没有输出且没有错误。
如何使这项工作的任何方向都会很棒。感谢。
答案 0 :(得分:1)
如果您以这种方式配置package.json
{
"name": "test",
"version": "0.1.1",
"description": "Validate files with ESLint",
"scripts": {
"test": "eslint src"
},
"devDependencies": {
"eslint": "^2.0.0",
"eslint-config-ideal": "^0.1.0"
}
}
现在运行
npm install
然后运行
npm test
这应该适用于操作系统。
注意:如果直接运行eslint
,则需要使用npm install eslint -g
命令全局安装eslint。