Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

128
Vistas
Usar gancho en la función da como resultado una llamada de gancho no válida

Actualmente estoy reescribiendo mi sitio web en una aplicación web con ReactJS, y tengo algunos problemas para usar y comprender los ganchos. Escribí un gancho personalizado "useFetch" que funciona, nunca tuve ningún problema hasta ahora: actualmente estoy tratando de usar mi gancho en una función como esta:

 import useFetch from '../../../hooks/useFetch'; import {clientGenerateProcessScreen, clientClearProcessScreen} from '../../../utils/processScreens'; function myFunction (paramName, paramType, paramDesc) { let process_screen = clientGenerateProcessScreen (); let rqt_url = `/fileNameA.php`; if (paramType!= "a") rqt_url = `/fileNameB.php`; const { data, isLoading, error } = useFetch(rqt_url); if (!isLoading && data.success) { doSomethingA (); } else { showErrorMessage (); } } export default myFunction;

La función se llama desde un onClick en un componente de reacción. Teóricamente debería funcionar bien, sin embargo, siempre termino teniendo este error:

Error no detectado: Llamada de gancho no válida. Los ganchos solo se pueden llamar dentro del cuerpo de un componente de función. Esto podría suceder por una de las siguientes razones:

  1. Es posible que tenga versiones que no coincidan de React y el renderizador (como React DOM)
  2. Podrías estar rompiendo las Reglas de los Hooks
  3. Es posible que tenga más de una copia de React en la misma aplicación

No entiendo dónde está el error aquí. Estoy usando mi gancho en la parte superior de una función, no en una condición ni nada que pueda romper las reglas del gancho. He intentado importar React y ReactDOM en mi archivo de funciones, pero esto no resuelve ninguno de mis problemas. Supongo que podría haberme perdido algo básico o simple, pero no puedo encontrar qué...

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

En primer lugar, implementó un gancho personalizado , por lo tanto, debe tener el prefijo "usar": useMyFunction , para obtener más contexto, consulte ¿Los ganchos de React realmente tienen que comenzar con "usar"? .

Ahora que sabe que es un gancho y no una función útil, debe seguir la API de ganchos ("Reglas de ganchos"), y una de esas reglas es que debe llamarlo en un nivel superior, es decir, NO PUEDE usarlo como una devolución de llamada .

Para resolverlo, requiere un cambio lógico, no es algo que tengas una guía de solución paso a paso, reconsidera su uso lógico.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda