"strict"

Włącza zestaw najważniejszych, rygorystycznych sprawdzeń kompilatora.

Na tej stronie

Przykład

#
JSON
{
  "compilerOptions": {
    "strict": true,
    "target": "ES2022",
    "module": "ESNext",
    "moduleResolution": "Bundler"
  }
}

Definicja i zastosowanie

#

Opcja strict: true w tsconfig.json włącza naraz grupę sprawdzeń, między innymi noImplicitAny, strictNullChecks, strictFunctionTypes, strictBindCallApply, strictPropertyInitialization i useUnknownInCatchVariables.

To zalecane ustawienie dla każdego nowego projektu. Wyłapuje najczęstsze błędy: nieotypowane parametry, odczyt z wartości, która może być null, czy pola klasy bez przypisanej wartości.

Nowe sprawdzenia dodawane w kolejnych wersjach TypeScriptu do grupy strict włączają się automatycznie. Pojedyncze sprawdzenie z grupy możesz wyłączyć osobno, na przykład przy stopniowej migracji dużego projektu.

Składnia

#
Składnia
{
  "compilerOptions": {
    "strict": true
  }
}

Więcej przykładów

#
Co wyłapuje tryb strict
TypeScript
function greet(name) {
  // Błąd (noImplicitAny): Parameter 'name' implicitly has an 'any' type.
  return 'Cześć ' + name
}

const input = document.querySelector('input')
input.value = 'Ania'
// Błąd (strictNullChecks): 'input' is possibly 'null'.

Dobre praktyki

#
  • Zaczynaj każdy nowy projekt z strict: true. Włączanie go później w dużym kodzie jest znacznie trudniejsze.
  • Przy migracji z JavaScriptu możesz włączać sprawdzenia z grupy po kolei, zamiast całego strict naraz.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.