如何排除CSS文件被带类型检查的TypeScript ESLint规则检测?
解决ESLint 9.x中TypeScript类型检查规则误检测CSS文件的问题
问题原因
启用类型检查的TypeScript推荐规则集(recommendedTypeChecked)没有限定作用的文件范围,导致ESLint会对CSS文件应用这些需要TypeScript类型信息的规则,但CSS文件无法提供类型上下文,直接触发报错。
解决方案
把类型检查相关的所有配置(包括recommendedTypeChecked规则集和自定义的languageOptions)放在同一个配置对象里,通过files明确指定仅作用于JS/TS文件,确保规则不会覆盖到CSS文件。
修改后的类型检查配置代码如下:
// linting with Type Information { // 限定仅对JS/TS文件应用类型检查规则 files: ['**/*.{js,mjs,cjs,ts}'], // 展开带类型检查的TypeScript推荐规则 ...tseslint.configs.recommendedTypeChecked, languageOptions: { parserOptions: { projectService: true, tsconfigRootDir: import.meta.dirname, }, globals: globals.browser, }, },
补充说明
- 你之前的写法是把
...tseslint.configs.recommendedTypeChecked单独展开成一个无文件限制的配置块,导致规则全局生效;现在把它放入带files的对象后,规则仅对指定的JS/TS文件生效,不会干扰CSS文件的检测。 - 你已有的CSS检测配置无需修改,它通过
files: ['**/*.css']已经明确限定了作用范围,会独立处理CSS文件。
内容的提问来源于stack exchange,提问作者superjos
相关产品推荐
相关产品推荐

