Przejdź do treści
TS2349

    ↑↓ ruch · ⏎ otwórz · esc zamknij

    TS2349

    Wyrażenia nie można wywołać

    This expression is not callable.

    Własne słowa kompilatora. Nietłumaczone — to ten ciąg, który wkleiłeś w wyszukiwarkę.

    Nawiasy są używane jako wywołanie funkcji, ale wyrażenie nie ma sygnatury wywołania.

    Odtworzenie

    const value = 'text'
    
    value()

    Build potwierdza, że to emituje dokładnie ten kod.

    Dlaczego kompilator tak mówi

    Tylko wartości funkcyjne mają sygnatury wywołania. Tekst może mieć metody, ale sam jest danymi; dodanie `()` każe środowisku uruchomić go jak kod.

    Naprawy

    1. 01
      const value = 'text'
      
      const upper = value.toUpperCase()

      Wywołaj metodę wykonującą zamierzoną operację.

    2. 02
      const value = () => 'text'
      
      const text = value()

      Jeśli miała to być odroczona praca, przechowuj funkcję zamiast jej wyniku.

    Wniosek

    Przeczytaj typ pod nagłówkiem błędu: mówi, jaka niefunkcyjna wartość naprawdę dotarła do miejsca wywołania.

    Dokąd dalej

    Błędy