Saltar al contenido
TS2349

    ↑↓ mover · ⏎ abrir · esc cerrar

    TS2349

    La expresión no se puede llamar

    This expression is not callable.

    Las palabras del propio compilador. Sin traducir — es la cadena que pegaste en el buscador.

    Se usan paréntesis como llamada a función, pero la expresión no tiene firma de llamada.

    Reproducción

    const value = 'text'
    
    value()

    La compilación afirma que esto emite exactamente este código.

    Por qué lo dice el compilador

    Solo los valores de tipo función tienen firmas de llamada. Una cadena puede tener métodos, pero la cadena es un dato; añadir `()` pide al entorno ejecutarla como código.

    Arreglos

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

      Llama al método que realiza la operación deseada.

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

      Si debía ser trabajo diferido, guarda una función en vez de su resultado.

    Conclusión

    Lee el tipo bajo el encabezado: indica qué valor que no es función llegó realmente al punto de llamada.

    Adónde ir después

    Errores