jda*_*vis 5 javascript npm eslint
在我的项目中,我尝试将ESLint实施为从npm脚本启动的构建过程的一部分。
我有eslint,所有插件都需要作为npm软件包安装,并且我的.eslintrc文件已全部安装。当我然后运行命令时...
eslint src
Run Code Online (Sandbox Code Playgroud)
...在Mac上,一切正常。因此,我可以接受该命令并将其粘贴到npm脚本中,并且效果很好。
但是,在Windows上遇到问题。当我安装eslint npm软件包时,无法从命令行使用eslint。我看到它已经安装在node_modules目录中,并且将可执行文件放入了node_modules / .bin目录中,但是当我运行命令时...
eslint src
Run Code Online (Sandbox Code Playgroud)
...我收到一条错误消息,提示未找到eslint命令。
如果我在全球范围内安装eslint和所有插件,我可以使它正常工作,但这不是理想的选择,因为其他任何克隆我的代码的人也都需要这样做。就像在Windows上一样,命令行没有映射到node_modules / .bin的路径。
我试图用这个小技巧解决这个问题:
PATH=$(npm bin):$PATH eslint src
Run Code Online (Sandbox Code Playgroud)
当我直接从命令行运行此命令时,似乎可以找到eslint命令,并且一切正常。但是,当我将同一命令放入npm脚本时,该脚本运行时没有输出,也没有错误。
关于如何进行此工作的任何方向都将非常棒。谢谢。
如果你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"
}
}
Run Code Online (Sandbox Code Playgroud)
现在只需运行
npm install
Run Code Online (Sandbox Code Playgroud)
然后运行之后
npm test
Run Code Online (Sandbox Code Playgroud)
这应该可以跨操作系统工作。
注意:如果直接运行eslint则需要使用npm install eslint -g命令全局安装eslint。
| 归档时间: |
|
| 查看次数: |
3687 次 |
| 最近记录: |