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

Lint Staged无法访问子文件夹 如何配置使其扫描所有层级文件

问题解决步骤
  • 首先确认子文件夹内的目标文件已加入Git暂存区
    lint-staged的设计逻辑是仅处理已经通过git add加入暂存区的文件,不会扫描未暂存、未被Git追踪的文件。你可以先执行git status查看sub-folder-x、sub-folder-y下的文件是否处于暂存状态,未暂存的话执行git add对应文件后再重新运行npx lint-staged测试。
  • 检查各类忽略文件配置
    确认你的项目根目录下的.gitignore、.eslintignore、.prettierignore文件中没有添加src/sub-folder-*这类忽略规则,排除规则过滤导致子目录文件无法被识别的问题。
  • 验证本地命令的扫描范围
    你可以先手动执行以下两个命令,验证工具本身是否可以正常扫描到子目录的文件:
    # 测试prettier扫描范围
    npx prettier --check src/**/*.{js,jsx,ts,tsx}
    # 测试eslint扫描范围
    npx eslint src/**/*.{js,jsx,ts,tsx}
    

如果手动执行命令也无法扫描到子目录文件,说明是ESLint/Prettier本身的配置问题,和lint-staged无关;如果手动执行可以扫到,就可以确认是文件未暂存导致的。

  • 可选:调整lint-staged配置强制全量扫描
    如果你需要每次执行lint-staged时都强制扫描src下所有匹配文件,不受暂存区限制,可以将配置修改为:
{
  "src/**/*.{js,jsx,ts,tsx}": ["prettier --check src/**/*.{js,jsx,ts,tsx}", "eslint src/**/*.{js,jsx,ts,tsx}"]
}

注意该写法会失去lint-staged只扫描暂存文件的性能优势,不建议大项目使用。

内容的提问来源于stack exchange,提问作者THIAGO DE BONIS

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 17:45:05