package.json 和 Eslint glob 扩展
Posted
技术标签:
【中文标题】package.json 和 Eslint glob 扩展【英文标题】:package.json and Eslint glob extension 【发布时间】:2019-07-30 21:31:25 【问题描述】:我的 package.json 在下面。如何更新它以便 eslint 运行:
src 和 test 目录
为
.js 和 .jsx 文件?现在 * 通配符包括我不想要的 .json。
package.json
...
"lint": "eslint src/**/*.js*,test/**/*.js*
...
【问题讨论】:
【参考方案1】:您可以在eslint documentation阅读:
请注意,当传递一个 glob 作为参数时,它会被你的 shell 扩展。扩展的结果可能因您的 shell 及其配置而异。如果你想使用 node glob 语法,你必须引用你的参数(如果你需要在 Windows 中运行,使用双引号),如下:
所以建议使用双引号。一旦你使用双引号(需要在 json 字符串中转义),你可以稍微修改你的模式,例如
...
"lint": "eslint \"src,test/**/*.js,jsx\""
...
使用globster.xyz 进行测试(globster.xyz 一开始需要/
,但 eslint 不需要,不知道为什么......)
通常有不止一种方法可以实现你想要的,但我认为这是最简洁的。
【讨论】:
我同意这个适用于 windows 机器的解决方案。【参考方案2】:这是我用来在一个目录上运行 eslint 的:
"lint": "node_modules/.bin/eslint --ext js --ext jsx src"
我认为您可以将test
目录添加到src
之后的末尾即可。还有更多信息here
【讨论】:
如果我有 2 个文件夹 src 和 test 怎么办 我认为您可以将test
目录添加到src
之后的末尾以同时执行这两项操作。还有更多信息here【参考方案3】:
我认为您需要在这里以简洁换取具体:
...
"lint": "eslint src/**/*.js,src/**/*.jsx,test/**/*.js,test/**/*.jsx"
...
【讨论】:
暂时将此标记为答案,如果有更简洁的方法会很好。但这确实有效以上是关于package.json 和 Eslint glob 扩展的主要内容,如果未能解决你的问题,请参考以下文章
如何配置 package.json 在 js 和 jsx 文件上运行 eslint
如何配置 package.json 来运行 eslint 脚本
无法加载在 'package.json » eslint-config-react-app' 中声明的插件 'flowtype':找不到模块 'eslint/use-at-your-own-risk'
错误:无法加载在“.eslintrc.js”中声明的解析器“@babel/eslint-parser”:找不到模块“@babel/core/package.json”
依赖包版本号更新 warning package.json: “dependencies“ has dependency “eslint“ with range “^6.8.0“
如何解决这个错误:package.json » eslint-config-react-app/jest#overrides[0]: Environment key "jest/global