Monorepo中TypeScript编译器未检测并报告代码类型错误问题求助
Monorepo中TypeScript编译器未检测并报告代码类型错误问题求助
大家好,我现在维护一个TypeScript monorepo项目,原本期望从项目根目录执行类型检查命令,就能对workspaces里指定的所有子包代码做完整的类型校验。但现在遇到了很头疼的问题:明明代码里确实存在类型错误,执行检查命令后tsc却完全不报告任何问题,直接显示执行完成。
先贴一下执行类型检查命令的终端输出:
$ bun --filter '*' typecheck package-1 typecheck $ tsc └─ Done in 80 ms package-2 typecheck $ tsc └─ Done in 79 ms
下面是项目里的关键配置文件内容:
根目录 package.json
{ "name": "ts-monorepo", "private": true, "scripts": { "typecheck": "bun --filter '*' typecheck" }, "devDependencies": { "typescript": "^5.8.3" }, "workspaces": [ "package-1", "package-2" ] }
根目录 tsconfig.json
{ "compilerOptions": { "allowJs": true, "checkJs": false, "composite": true, "erasableSyntaxOnly": true, "esModuleInterop": true, "exactOptionalPropertyTypes": true, "isolatedModules": true, "module": "ESNext", "moduleResolution": "Bundler", "noEmit": true, "resolveJsonModule": true, "skipLibCheck": true, "strict": true, "target": "ESNext" }, "files": [], "references": [ { "path": "./package-1" }, { "path": "./package-2" } ] }
package-1 相关配置
package-1/package.json
{ "name": "package-1", "private": true, "version": "0.0.0", "type": "module", "scripts": { "typecheck": "tsc" } }
package-1/tsconfig.json
{ "extends": "../tsconfig.json" }
package-2 相关配置
package-2/package.json
{ "name": "package-2", "private": true, "version": "0.0.0", "type": "module", "scripts": { "typecheck": "tsc" } }
package-2/tsconfig.json
{ "extends": "../tsconfig.json" }
我已经确认子包代码里确实存在类型错误,比如变量类型不匹配、未定义变量调用这类问题,但tsc完全不检测出来。有没有朋友遇到过类似的情况?麻烦帮我分析下这是哪里配置出了问题,为什么tsc不报告这些类型错误呢?
内容来源于stack exchange
相关产品推荐
相关产品推荐

