"strict": true in tsconfig.json aktiviert eine Reihe strengerer Checks gleichzeitig. Es wird dringend für alle neuen Projekte empfohlen — es erkennt die Fehler, die TypeScript verhindern soll.
"strict": true in tsconfig.json aktiviert eine Reihe strengerer Checks gleichzeitig. Es wird dringend für alle neuen Projekte empfohlen — es erkennt die Fehler, die TypeScript verhindern soll.
// strictNullChecks — null/undefined are no longer assignable to everything
let name: string = null; // ❌ Error (without strict this compiles, then crashes)
function f(u?: User) { u.name; } // ❌ u is possibly undefined → forces a check
// noImplicitAny — parameters with no inferable type must be annotated
function g(x) {} // ❌ Error: 'x' implicitly has type 'any'
// strictPropertyInitialization — class fields must be initialized
class C { name: string; } // ❌ must init in constructor or mark optional
strictNullChecks ist die wichtigste: Sie trennt null/undefined von anderen Typen, wodurch der Compiler Sie zwingt, überall "könnte fehlen" zu behandeln — was die häufigste Klasse von Laufzeitfehlern beseitigt ("Eigenschaft von undefined kann nicht gelesen werden").
Aktivieren Sie Flags schrittweise (strictNullChecks zuerst), beheben Sie Fehler Datei für Datei, anstatt alles auf einmal in einem großen Legacy-Projekt zu aktivieren.
Ohne strict mode erlaubt TypeScript immer noch viele der unsicheren Muster, die es verhindern soll (implizites any, unkontrollierte Nulls).
Strict mode ist, wo TypeScript den meisten Wert liefert — behandeln Sie es als Standard und lockern Sie nur einzelne Flags aus gutem Grund.