noErrorTruncation în TypeScript

Afișează tipurile complete în mesajele de eroare, fără prescurtarea „... 15 more ...”.

Sintaxă
"compilerOptions": { "noErrorTruncation": true }

Ce face noErrorTruncation

Când un tip este foarte lung (un obiect cu multe proprietăți, o uniune mare), tsc îl prescurtează în mesajele de eroare: ... 15 more .... De obicei e mai ușor de citit așa. Când partea ascunsă este chiar cea care contează, noErrorTruncation afișează tipul complet.

Opțiunea afectează și textul afișat de editor când treci cu mouse-ul peste un tip. Implicit: false.

Parametri

Parametru Descriere
true Tipurile nu sunt prescurtate.
false Valoarea implicită.

Exemple

Exemplul 1: Un obiect cu 30 de câmpuri

Implicit, mesajul ascunde câmpurile 15–29. Cu --noErrorTruncation apar toate.

// index.ts
const setari = { camp1: 1, camp2: 2, /* ... */ camp30: 30 };
const x: string = setari;
console.log(x);

Rezultat (tsc 5.9)

$ npx tsc
index.ts(2,7): error TS2322: Type '{ camp1: number; camp2: number; camp3: number; camp4: number; camp5: number; camp6: number; camp7: number; camp8: number; camp9: number; camp10: number; camp11: number; camp12: number; camp13: number; camp14: number; ... 15 more ...; camp30: number; }' is not assignable to type 'string'.

$ npx tsc --noErrorTruncation
index.ts(2,7): error TS2322: Type '{ camp1: number; camp2: number; camp3: number; camp4: number; camp5: number; camp6: number; camp7: number; camp8: number; camp9: number; camp10: number; camp11: number; camp12: number; camp13: number; camp14: number; camp15: number; camp16: number; camp17: number; camp18: number; camp19: number; camp20: number; camp21: number; camp22: number; camp23: number; camp24: number; camp25: number; camp26: number; camp27: number; camp28: number; camp29: number; camp30: number; }' is not assignable to type 'string'.

Greșeli frecvente

  • Să lași opțiunea pornită permanent într-un proiect cu tipuri generate mari. Mesajele devin de sute de rânduri.

Comenzi înrudite

  • pretty: Afișează erorile cu culori și cu rândul de cod subliniat; implicit pornit când ieșirea este un terminal.
  • explainFiles: Afișează fiecare fișier din compilare și motivul pentru care a fost inclus (include, import, lib, types).