为什么eslint无法检测目录中的所有文件,但可以检测单个文件?

qiu*_*tao 6 javascript npm eslint

这是我的目录结构.

在此输入图像描述

我想配置一些eslint规则来检测我的代码.

.eslintrc,我写这些配置项.

{
  "extends": "airbnb",
  "rules": {
    "valid-jsdoc": 2,
    // Disable until Flow supports let and const
    "no-var": 0,
    "react/jsx-uses-react": 1,
    "react/jsx-no-undef": 2,
    "react/wrap-multilines": 2,
    "func-names": 0,
    "new-cap": 0,
    "no-undef": 0,
  },
  "plugins": [
    "react"
  ]
}
Run Code Online (Sandbox Code Playgroud)

我用npm脚本来运行eslint.

  "scripts": {
    "lint": "eslint src"
  },
Run Code Online (Sandbox Code Playgroud)

通常,当我运行时npm run lint,它将检测src目录中的所有文件.

但是,遗憾的是,没有任何输出.

在此输入图像描述

我不知道为什么.我想也许我写了错误的配置项.但是在我编写npm脚本之后"lint": "eslint src/component/App.jsx",eslint会起作用.

那问题出在哪里?Eslint可以很好地检测单个文件,但它无法检测某些目录中的所有文件.

在此输入图像描述

Gya*_*eep 14

当你运行时eslint src,默认它会查找所有带.js扩展名的文件.我认为在你的情况下你想改变命令eslint src --ext .js,.jsx.这将寻找里面的所有文件src.js和/或.jsx 扩展.(个人推荐)

如果您想使用glob来解决此问题,那么您可以将cmd更改为 eslint src/**/*.jsx

CLI文档:http://eslint.org/docs/user-guide/command-line-interface

全局模式有助于:http://eslint.org/docs/user-guide/configuring#ignoring-files-and-directories