typescript - Hur hanterar jag monorepo tsconfig.json för att skapa dist-mapp i varje arbetsytamapp
Jag skapar precis ett monorepo med denna struktur
+ packages
+ packages-A
+ src
- tsconfig.json
- package.json
+ packages-B
+ src
- tsconfig.json
- package.json
- package.json
- tsconfig.json
Jag har ställt in tsconfig.json i rootDir så här:
{
"exclude": [
"node_modules/*",
"example/*"
],
"compilerOptions": {
"allowJs": true,
"module": "es6",
"declaration": true,
"skipLibCheck": true,
"noImplicitAny": true,
"esModuleInterop": true,
"jsx": "react",
"lib": [
"esnext"
],
"moduleResolution": "node",
"resolveJsonModule": true,
"strict": true,
"target": "esnext",
}
}
och jag satte tsconfig.json i varje inbäddad package-mapp så här:
{
"extends": "../../tsconfig.json",
"include": [
"src/**/*",
],
"compilerOptions": {
"outDir": "./dist",
}
}
med denna setup, varje gång jag kör tsc, genereras .d.ts i package/**/src-mappen och alla mina filer i package/**/src formateras.
Jag förväntar mig att varje gång jag kör tsc, så har jag en dist-mapp i package/**/ som skapar .d.ts, så kan någon hjälpa mig vilken konfiguration jag bör ändra för att få det att fungera som jag förväntar mig?
Svar #1
Försök att lägga till detta i varje pakets tsconfig och exkludera även dist
"compilerOptions": {
"rootDir": "src",
"outDir": "dist",
"composite": true
},
"exclude": [
"dist"
]
