如何配置 package.json 以运行 eslint 脚本

因此,我使用 eslint 作为我的反应项目的行程,我希望它检查我的所有 .js文件。

我可以通过剧本做到这一点:

"lint": "eslint back/*.js && eslint backTest/*.js && eslint front/actions/*.js"

如何让它递归地检查每个 .js文件,比如:

"lint": "eslint -r *.js"

这样可以节省我单独输入每个文件的时间

先谢谢你的帮助

116629 次浏览

eslint "**/*.js" to run on all js files in all the folders recursively (in the current folder)

You can also do: AnyFolder/**/*.js

And to ignore a folder: eslint "**/*.js" --ignore-pattern node_modules/

Know more at eslint/command-line-interface

eslint . --ext .js to lint files with the .js extension.

The . targets files in the current directory and all subdirectories.

To include other file extensions, eslint . --ext .js,.jsx or eslint . --ext .js --ext .jsx.

The eslint documentation covers this option.

I'm not sure if the accepted answer is outdated, but by looking at the docs,

By default, it uses .js as the only file extension.

Also, according to a member's comment on the project's Github, using . equals running in all subdirectories. It seems to me that running eslint . should suffice (though it doesn't cover the new ES Module .mjs files).

To add to TranBrian10's solution, I installed eslint locally, so calling eslint in the terminal results in a command not found error.

I was able to get around this by using npx eslint instead:

`eslint . --ext .js` -> `npx eslint . --ext .js`

And as GollyJer noted, this won't work for Windows due to the . syntax