配置ESLint 9.x.x+TypeScript时,已设parserOptions.project仍报错?
解决ESLint 9.x.x + TypeScript中@typescript-eslint/dot-notation规则报错问题
你遇到的错误是因为@typescript-eslint/dot-notation规则依赖TypeScript类型信息才能运行,虽然你配置了parserOptions.project,但可以从以下几个方向排查问题:
确认tsconfig文件路径有效性
检查parserOptions.project里的三个tsconfig文件是否都存在于项目根目录,路径是否准确。如果某个文件不存在,ESLint会无法生成对应的parserServices。显式指定TypeScript解析器
在ESLint 9的扁平配置中,显式指定解析器能避免潜在的匹配问题。修改languageOptions部分:languageOptions: { sourceType: "module", parser: tseslint.parser, // 显式指定解析器 parserOptions: { ecmaFeatures: { jsx: true, }, ecmaVersion: "latest", project: ["./tsconfig.json", "tsconfig.node.json", "tsconfig.app.json"], }, globals: globals.browser, },清理ESLint缓存
旧缓存可能导致配置变更不生效,执行命令清除缓存:eslint --clear-cache检查tsconfig的include范围
确保你的.ts/.tsx文件都被包含在tsconfig的include字段中。如果ESLint处理的文件不在tsconfig编译范围内,也会导致无法生成parserServices。示例tsconfig配置:{ "include": ["src/**/*.{ts,tsx}", "其他需要扫描的文件路径"] }排查配置块冲突
检查是否存在其他ESLint配置块(比如针对.js文件的配置),如果这些配置块未设置parserOptions.project却意外匹配到了.ts文件,也会触发错误。确保.ts/.tsx文件仅被你当前的配置块处理。
内容的提问来源于stack exchange,提问作者SailorStat
相关产品推荐
相关产品推荐

