Przejdź do treści
webtype.orgwebtype.orgtsconfig

    ↑↓ ruch · ⏎ otwórz · esc zamknij

    tsconfig

    allowUnreachableCode

    Kod po return

    Ustaw na `false` — domyślnie tylko ostrzega w edytorze, a ostrzeżenie to nie awaria builda.

    Od
    TypeScript 1.8
    strict
    Poza strict
    W twoim tsconfigu
    "allowUnreachableCode": false

    Ten sam fragment za każdym razem. Zmieniła się tylko opcja.

    Z wyłączoną

    "allowUnreachableCode": true
    export function run() {
      return 1
      const after = 2
    }

    Kompiluje się czysto

    Z włączoną

    "allowUnreachableCode": false
    export function run() {
      return 1
      const after = 2
    }

    Zgłasza TS7027

    Dlaczego kompilator się tym przejmuje

    Ta opcja ma trzy stany, a nie dwa — i dlatego łatwo ją pomylić. Pozostawiona bez wartości daje podpowiedź w edytorze; ustawiona na `false` daje błąd; ustawiona na `true` nie daje nic. Kod nieosiągalny nigdy nie jest zamierzony — to wczesny return dodany przy naprawie, przeniesiony wyżej `throw`, gałąź, która przestała być gałęzią — a jedynym z tych trzech ustawień, które nie wpuści go na główną gałąź, jest jawne `false`.

    Wniosek

    Brak wartości to tu nie to samo co `false`. Napisz `false`.

    Gdzie iść dalej

    Opcji: 22