You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

create-react-app执行npx eslint src报无匹配文件错误

问题原因

执行 npx eslint src 或 npx eslint src/ 报「No files matching the pattern "src" were found」错误,核心原因是ESLint 默认仅识别 .js、.jsx 后缀的脚本文件。传入目录路径时,ESLint 会自动遍历目录下符合默认后缀规则的文件,你的项目是TypeScript技术栈,源码以 .ts、.tsx 为后缀,ESLint遍历src目录时找不到符合默认后缀的文件,就会抛出匹配不到文件的错误。
网上多数教程演示npx eslint src能直接运行,是因为演示项目都是纯JS技术栈,文件后缀刚好匹配ESLint默认规则,TS项目必须显式声明要识别的后缀类型。
执行 npx eslint src/* 能正常运行,是因为这条命令里的通配符 * 是由当前终端Shell先展开成所有具体文件路径再传给ESLint,ESLint直接拿到了明确的文件路径,不需要自己做后缀匹配,所以不会报错。但这种写法无法递归扫描src下嵌套子目录里的文件,不是规范解法。

解决方案
  • 临时执行校验:命令行追加--ext参数,明确告诉ESLint需要扫描哪些后缀的文件
    npx eslint src --ext .ts,.tsx,.js,.jsx
    
    参数里的后缀列表可以根据项目实际用到的脚本类型调整。
  • 长期使用(推荐):在项目package.json的scripts字段中添加固定的lint脚本,把后缀参数写死,避免每次执行命令都手动输入长参数
    {
      "scripts": {
        // 项目原有其他脚本...
        "lint": "eslint src --ext .ts,.tsx,.js,.jsx"
      }
    }
    
    后续需要校验代码时,直接执行npm run lint即可。
额外配置优化

你当前的ESLint配置还有一处逻辑缺失:已经安装了@typescript-eslint/eslint-plugin插件,但没有在extends中引入TS官方推荐规则集,插件不会实际生效。将配置中的extends字段修改为如下内容即可:

extends: [
  "plugin:react/recommended",
  "plugin:@typescript-eslint/recommended",
  "standard"
],

另外注意,手动初始化ESLint配置后,记得把package.json中create-react-app默认生成的eslintConfig配置块删除,避免多份配置冲突导致规则不生效。

内容的提问来源于stack exchange,提问作者JimmyTheCode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 16:39:13