TypeScript · Avançado · Inglês · Técnico
project references
Recurso que divide um projeto em vários tsconfig que se referenciam por references e composite, compilados em ordem com tsc --build e de forma incremental.
Onde usar
Monorepos o usam para recompilar só o pacote alterado e separar o código dos testes. Cada projeto referenciado expõe seus .d.ts ao dependente.
Em código
// packages/app/tsconfig.json
{
"compilerOptions": { "composite": true },
"references": [{ "path": "../core" }]
}
// build incremental:
// tsc --buildExemplos
Split the monorepo with project references to speed up builds.
Divida o monorepo com project references para acelerar os builds.
Run tsc --build, plain tsc won't rebuild the referenced project.
Rode tsc --build, o tsc comum não recompila o projeto referenciado.
Cuidado
Referência não é include: o projeto dependente enxerga os .d.ts gerados do outro, então é preciso rodar tsc --build, e não só tsc, para atualizá-los.
Sinônimos
references, composite projects