removeComments în TypeScript

Scoate comentariile din fișierele .js generate (și din .d.ts).

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

Ce face removeComments

Implicit, tsc păstrează comentariile din sursă în JavaScript-ul generat. Cu removeComments, le scoate pe toate: //, /* */ și /** */. Fișierele devin puțin mai mici.

Atenție: comentariile JSDoc dispar și din fișierele .d.ts, deci cei care folosesc biblioteca nu mai văd descrierile în editor. Pentru micșorarea codului unui site, un minificator face treaba mai bine. Implicit: false.

Parametri

Parametru Descriere
true Comentariile sunt scoase.
false Valoarea implicită: comentariile rămân.

Exemple

Exemplul 1: Fișierele generate fără comentarii

Niciun comentariu nu ajunge în a.js și nici în a.d.ts (unde dispare și descrierea JSDoc).

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

// src/a.ts
/** Prețul cu TVA. */
export function cuTva(p: number) {
  // 19%
  return p * 1.19; /* rotunjit mai târziu */
}

Rezultat (tsc 5.9)

$ npx tsc && cat dist/a.js dist/a.d.ts
export function cuTva(p) {
    return p * 1.19;
}
export declare function cuTva(p: number): number;

Greșeli frecvente

  • Să pornești opțiunea într-o bibliotecă publicată. Documentația din .d.ts se pierde.

Comenzi înrudite

  • declaration: Generează lângă fiecare fișier .js un fișier .d.ts cu tipurile lui, ca alte proiecte să-l poată folosi cu tipuri.
  • stripInternal: Scoate din fișierele .d.ts declarațiile marcate cu /** @internal */, ca să nu apară în API-ul public.