TypeScript检查未在files中指定的额外文件问题求助
解决TypeScript仅检查特定文件的问题
你的tsconfig配置里存在几个关键问题,导致TypeScript仍会检查其他文件:
exclude规则与files冲突
你在exclude中设置了"frontend/**/*.tsx",而要检查的AppRoutes.tsx正好属于这个路径。虽然TypeScript会优先保留files数组中的文件,但这个冲突配置会让IDE(比如VSCode)的TS服务产生混淆,甚至可能覆盖你的files设置。正确的配置方式
要让TypeScript严格只检查指定文件,按以下步骤修改:- 移除exclude中的
"frontend/**/*.tsx"规则,只保留"node_modules"即可 - 确保files数组只包含需要检查的文件,注意移除元素末尾多余的逗号(你的配置里最后一个元素后多了逗号,虽JSON允许但易引发混淆)
修改后的tsconfig.json关键部分如下:
{ "compilerOptions": { // 保留原有编译选项不变 }, "files": [ "frontend/src/AppRoutes.tsx" ], "exclude": ["node_modules"], "types": ["cypress", "node", "@4tw/cypress-drag-drop", "vite/client"] }- 移除exclude中的
额外注意事项
- 命令行调用
tsc时,不要附加任何文件名参数,否则TypeScript会忽略tsconfig中的files配置,转而检查你指定的文件 - 如果使用VSCode,确保编辑器使用项目根目录下的tsconfig.json:可通过右下角的TS版本指示器切换,选择"Use Workspace Version"
- 若IDE仍在检查其他文件,尝试重启VSCode的TS服务(按
Ctrl+Shift+P,输入"TypeScript: Restart TS Server")
- 命令行调用
内容的提问来源于stack exchange,提问作者Arif
相关产品推荐
相关产品推荐

