eslint 和 package.json 配置

Posted

技术标签:

【中文标题】eslint 和 package.json 配置【英文标题】:eslint and package.json configuration 【发布时间】:2019-10-24 22:57:56 【问题描述】:

我的项目中有 eslint 和一些规则。 在我的 package.json 中有:

"lint": "eslint . --ext .js --ext .ts --ext .tsx --ignore-pattern 'node_modules/'".

有什么方法可以设置我想在 .eslintrc.json 中检查的扩展,所以在 package.json 中我只是设置了:

"lint": "eslint"?

package.json


  "lint": "eslint . --ext .js --ext .ts --ext .tsx --ignore-pattern 'node_modules/'"

我想拥有:

paxkage.json

  "lint": "eslint"

【问题讨论】:

【参考方案1】:

恐怕,将这两个参数都放入配置文件中 - 检查文件扩展名和忽略目录模式 - 目前是不可能的。文件扩展名或要检查的文件只能在命令行上提供,如documented 和here 和here。

您可以在命令行中保留文件扩展名参数并使用逗号缩短命令:

eslint --ext .js,.ts,.tsx .

并将--ignore-pattern 参数移至.eslintignore 文件,即documented way how to exclude files and directories by multiple patterns。例如,.eslintignore 用于一个简单的 javascript 项目:

# lcov web site
coverage
# bundled and minified output
dist
# external dependencies
node_modules

也可以将要忽略的模式放入package.json 文件中。使用与eslintConfig 键类似的eslintIgnore 键:

"eslintIgnore": [
  "coverage", "dist", "node_modules"
]

或者,您可以尝试使用 glob 模式指定 all input files in the command-line。使用单引号或双引号来防止 shell 全局模式扩展:

eslint "**/*.js,jsx,es6"

然后使用上述两种方法之一指定要忽略的模式,以避免检查源文件以外的其他文件。

【讨论】:

我将使用 .eslintignore 文件原理。感谢您的评论!

以上是关于eslint 和 package.json 配置的主要内容,如果未能解决你的问题,请参考以下文章

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

package.json 和 Eslint glob 扩展

各种关闭eslint方法总结

vue项目ESLint检查

你如何配置和使用 gulp eslint 任务?

无法加载在 'package.json » eslint-config-react-app' 中声明的插件 'flowtype':找不到模块 'eslint/use-at-your-own-risk'