ESLint配置ignores目录仍被校验问题求助
解决ESLint Flat Config忽略目录不生效的问题
你的问题出在ignores配置的作用域上:当前你把ignores放在了某个具体的配置块中,这个忽略规则只会对该配置块内的files生效,但其他配置块(比如tseslint.configs.recommended、eslint.configs.recommended)并没有继承这个忽略规则,依然会匹配这些目录下的文件进行校验。
修复方案:配置全局忽略规则
将ignores单独提取为一个顶层的配置对象,这样所有配置块都会遵守该忽略规则:
import eslint from '@eslint/js'; import stylistic from '@stylistic/eslint-plugin'; import tseslint from 'typescript-eslint'; /** @type { import('@typescript-eslint/utils').TSESLint.FlatConfig.ConfigFile } */ export default [ // 全局忽略规则,对所有后续配置块生效 { ignores: [ '**/tests-examples/**', '**/pw-report/**', ], }, eslint.configs.recommended, ...tseslint.configs.recommended, ...tseslint.configs.stylistic, stylistic.configs.customize({ 'indent': 2, 'brace-style': '1tbs', 'semi': true, 'arrow-parens': false, }), { plugins: { '@typescript-eslint': tseslint.plugin, '@stylistic': stylistic, }, files: [ '**/*.ts', ], rules: { // 你的规则配置 }, }, ];
额外排查点
如果修改后依然不生效,检查以下内容:
- 运行ESLint时是否使用了
--no-ignore参数,或者手动指定了要校验的文件路径(这会跳过忽略规则) - 确认忽略路径的大小写与实际目录一致(Linux/macOS下路径大小写敏感)
- 升级ESLint及相关插件到最新版本,避免Flat Config的早期bug
内容的提问来源于stack exchange,提问作者iam_malc
相关产品推荐
相关产品推荐

