如何配置 package.json 来运行 eslint 脚本
Posted
技术标签:
【中文标题】如何配置 package.json 来运行 eslint 脚本【英文标题】:How to configure package.json to run eslint script 【发布时间】:2016-07-18 09:11:11 【问题描述】:所以我使用 eslint 作为我的 react 项目的 linter,我希望它检查我所有的 .js
文件。
我可以通过脚本做到这一点:
"lint": "eslint back/*.js && eslint backTest/*.js && eslint front/actions/*.js"
我怎样才能让它递归地检查每个.js
文件,例如:
"lint": "eslint -r *.js"
这样我就不必单独输入每个文件了
提前感谢您的帮助
【问题讨论】:
【参考方案1】:eslint "**/*.js"
递归运行所有文件夹中的所有js文件(在当前文件夹中)
你也可以这样做:AnyFolder/**/*.js
忽略文件夹:eslint "**/*.js" --ignore-pattern node_modules/
在eslint/command-line-interface了解更多
【讨论】:
我已经在我的 Eclipse 氧气中使用 tern 设置了 eslint。它正在对所有文件进行 lint,我必须将其设置为仅 lint *.js 文件。在这里可以做什么? @Colin @Hadrian 默认情况下 eslint 不只解析 *.js 文件吗?如果您添加.
也可以阅读文档,它足以遍历所有子树以查找 js 文件
ESLint 总是忽略 /node_modules/*
和 /bower_components/*
中的文件。 Documentation 编辑:好的,我意识到你的答案也忽略了子路径中的 node_modules ,我的错。【参考方案2】:
eslint . --ext .js
对扩展名为 .js 的文件进行 lint。
.
定位当前目录和所有子目录中的文件。
要包含其他文件扩展名,
eslint . --ext .js,.jsx
或 eslint . --ext .js --ext .jsx
。
eslint documentation 涵盖此选项。
【讨论】:
【参考方案3】:我不确定接受的答案是否已过时,但通过查看docs,
默认情况下,它使用 .js 作为唯一的文件扩展名。
另外,根据项目Github上某位成员的comment,使用.
等于在所有子目录中运行。在我看来,运行 eslint .
就足够了(尽管它不包括新的 ES Module .mjs
文件)。
【讨论】:
【参考方案4】:为了增加 TranBrian10 的解决方案,我在本地安装了 eslint,所以在终端中调用 eslint
会导致 command not found
错误。
我可以通过使用npx eslint
来解决这个问题:
`eslint . --ext .js` -> `npx eslint . --ext .js`
正如 GollyJer 所说,由于 .
语法,这不适用于 Windows
【讨论】:
以上是关于如何配置 package.json 来运行 eslint 脚本的主要内容,如果未能解决你的问题,请参考以下文章