Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

131
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!