–project în TypeScript

Compilează proiectul descris de un anumit fișier tsconfig (sau de tsconfig.json dintr-un director dat).

Sintaxă
tsc --project tsconfig.build.json
tsc -p ./pachete/app

Ce face --project

Fără argumente, tsc caută tsconfig.json în directorul curent și în părinții lui. Cu -p (--project), alegi tu configurația: un fișier (tsc -p tsconfig.build.json) sau un director, caz în care se folosește tsconfig.json din el.

Se folosește des cu mai multe configurații în același proiect: una pentru build, una pentru teste, una mai strictă pentru CI. Fișierele suplimentare pot moșteni din cel principal cu "extends": "./tsconfig.json".

Parametri

Parametru Descriere
cale Un fișier de configurație sau un director cu tsconfig.json.

Exemple

Exemplul 1: O configurație mai strictă

tsconfig.strict.json moștenește setările de bază și adaugă strict. Același cod trece cu configurația principală și dă eroare cu cea strictă.

// tsconfig.json
{
  "compilerOptions": {
    "module": "nodenext",
    "target": "es2022",
    "outDir": "dist"
  }
}

// tsconfig.strict.json
{
  "extends": "./tsconfig.json",
  "compilerOptions": {
    "strict": true,
    "noEmit": true
  }
}

// index.ts
function dublu(x) { return x * 2; }
console.log(dublu(21));

Rezultat (tsc 5.9)

$ npx tsc && ls dist
index.js

$ npx tsc -p tsconfig.strict.json
index.ts(1,16): error TS7006: Parameter 'x' implicitly has an 'any' type.

$ npx tsc -p nimic
error TS5058: The specified path does not exist: 'nimic'.

Greșeli frecvente

  • Să combini -p cu nume de fișiere (tsc -p . index.ts). tsc refuză; fișierele vin din configurație.

Comenzi înrudite

  • --showConfig: Afișează configurația finală (cu extends rezolvat și opțiunile deduse) și lista de fișiere, fără să compileze.
  • composite: Pregătește un proiect pentru a fi folosit prin „references” de alte proiecte și construit cu tsc -b.
  • --init: Creează un fișier tsconfig.json nou, cu setările recomandate de versiunea curentă de TypeScript.
  • --watch: Pornește tsc în modul „watch”: recompilează automat la fiecare salvare a unui fișier.