"strict": true u tsconfig.json uključuje obitelj strožih provjera odjednom. Snažno se preporučuje za sve nove projekte — hvata greške koje TypeScript postoji da spriječi.
{ "compilerOptions": { "strict": true } }
"strict": true u tsconfig.json uključuje obitelj strožih provjera odjednom. Snažno se preporučuje za sve nove projekte — hvata greške koje TypeScript postoji da spriječi.
{ "compilerOptions": { "strict": true } }
// 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 je velika: ona odvaja null/undefined od ostalih tipova, pa kompajler prisiljava da rukuješ "može biti nedostaje" svugdje — eliminira #1 klasu runtime grešaka ("ne mogu pročitati svojstvo undefined").
Uključi zastavice postepeno (strictNullChecks prvi), ispravi greške datoteka po datoteka, umjesto da omogučiš sve odjednom na velikom naslijeđenom projektu.
Bez strogog reda, TypeScript i dalje dopušta mnoge od nesigurnih obrazaca koje je namjeravao spriječiti (implicit any, neprovjera nulls).
Strogi način rada je gdje TypeScript pruža većinu svoje vrijednosti — tretiraj to kao zadanu vrijednost i samo opusti pojedine zastavice s dobrim razlogom.