Przejdź do treści
webtype.orgwebtype.orgtsconfig

    ↑↓ ruch · ⏎ otwórz · esc zamknij

    tsconfig

    noUnusedLocals

    Zmienna, której nic nie czyta

    Nieodczytana zmienna lokalna to zwykle pozostałość po zmianie doprowadzonej tylko do połowy.

    Od
    TypeScript 2.0
    strict
    Poza strict
    W twoim tsconfigu
    "noUnusedLocals": true

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

    Z wyłączoną

    "noUnusedLocals": false
    export function run() {
      const unused = 1
      return 2
    }

    Kompiluje się czysto

    Z włączoną

    "noUnusedLocals": true
    export function run() {
      const unused = 1
      return 2
    }

    Zgłasza TS6133

    Dlaczego kompilator się tym przejmuje

    Wartość nie leży w porządku — bundler i tak to usunie. Chodzi o to, że nieodczytana zmienna jest dowodem: coś wyekstrahowano i nigdy nie zaktualizowano miejsca wywołania, albo przepisano warunek i jedna gałąź przestała być osiągalna. Ta diagnostyka jest w edytorach podpowiedzią, a nie błędem, więc szarzeje, zamiast krzyczeć — i właśnie dlatego należy do builda, bo obok szarej linijki łatwo przejść.

    Wniosek

    To podpowiedź w edytorze i błąd w buildzie. Tylko na jedno z tego ktoś reaguje.

    Gdzie iść dalej

    Opcji: 22