Node项目中tsc与ESLint均不提示TypeScript类型错误如何解决
- 确认测试类型错误的文件后缀为
.ts/.tsx:如果你的源码仍在使用.js/.jsx后缀,TSC默认不会校验这类文件的类型。需要在tsconfig.json的compilerOptions中添加"allowJs": true和"checkJs": true配置,才会对JS文件开启类型校验。 - 确认文件路径匹配include规则:运行
npx tsc --noEmit --showConfig查看最终生效的include路径是否覆盖了你写入类型错误的文件,也可以直接指定文件测试校验是否生效:npx tsc --noEmit src/你的测试文件.ts,如果指定文件能报错,说明你的include规则和实际文件路径不匹配。 - 修复tsconfig.json的语法问题:你给出的tsconfig配置里
sourceMap: true后面存在多余的尾逗号,部分旧版本的TS/ESLint解析器无法识别JSON尾逗号,删除该尾逗号后重试。 - 验证依赖安装正确性:确认
typescript、@typescript-eslint/parser、@typescript-eslint/eslint-plugin、@types/node均已安装到项目的devDependencies中,避免全局版本和项目版本不兼容的问题,可删除node_modules和包管理锁文件后重新安装依赖测试。 - 单独运行ESLint命令行验证:不要依赖编辑器的实时提示,直接运行
npx eslint src/你的测试文件.ts确认是否能扫到类型错误,如果命令行能正常报错,说明是编辑器的ESLint插件缓存问题,重启编辑器即可。
内容的提问来源于stack exchange,提问作者Maximilian Krause
相关产品推荐
相关产品推荐

