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

268
Views
NextJS: la compilación falla a pesar de que el desarrollo funciona bien, se queja de React Hooks donde no los estoy usando

cartel de primera vez aquí. Soy bastante nuevo en React y JS en general, y he estado trabajando en NextJS. Curiosamente, mi proyecto funciona bien cuando ejecuto next dev , pero falla cuando uso next build .

Obtuve el siguiente error:

 Error: React Hook "useFunction" cannot be called inside a callback. React Hooks must be called in a React function component or a custom React Hook function. react-hooks/rules-of-hooks

Lo interesante de useFunction es que no es un gancho: lo defino como una función en el mismo archivo que un componente FunctionButton y lo uso como parte del controlador de eventos onClick

 const useFunction = async () => { const result = await someStuff(); return result } const FunctionButton = () => { return <Button onClick={() => useFunction()}>Click Me</Button>; }; export default FunctionButton;

¿Alguna idea de por qué esto no se está construyendo con éxito? ¡Gracias por adelantado!

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

La razón por la que piensa que useFunction es un gancho es porque así es como funcionan las verificaciones de pelusa de React. Se basan en el prefijo use para determinar que es un gancho:

Proporcionamos un complemento ESLint que hace cumplir las reglas de Hooks para evitar errores. Asume que cualquier función que comience con "use" y una letra mayúscula inmediatamente después es un Hook.

Entonces, simplemente porque su función comienza con use , React lo toma como un gancho. Una solución sería cambiar el nombre de su función o agregar un comentario eslint-ignore .

about 4 years ago · Juan Pablo Isaza Report

0

React considera los archivos cuyo nombre comienza con la palabra use como ganchos aunque no lo sean.

Hay dos maneras de resolver el problema:

  1. simplemente cambie el nombre de su archivo. (no comienza con el use )
  2. agregue /* eslint-disable */ block comment en la parte superior del archivo.
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!