Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

243
Visualizações
Error de React Hooks: los ganchos solo se pueden llamar dentro del cuerpo de un componente de función

Recibo este error cuando uso el useState . Tengo esto en su forma básica, mirando los documentos de reacción para obtener una referencia, pero sigo recibiendo este error. Estoy listo para el momento de la palma de la mano...

 export function Header() { const [count, setCount] = useState(0) return <span>header</span> }
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Actualizado: 2018-diciembre

Ya está disponible la nueva versión de react-hot-loader , enlace . Hooks ahora está trabajando fuera de la caja. Gracias al autor, theKashey.

Echa un vistazo a este modelo https://github.com/ReeganExE/react-hooks-boilerplate

  • Ganchos de reacción
  • Reaccionar cargador caliente
  • Webpack, Babel, ESLint Airbnb

Respuesta anterior:

Primero, asegúrese de haber instalado react@next y react-dom@next .

Luego verifique si está usando react-hot-loader o no.

En mi caso, deshabilite el cargador en caliente y HMR podría hacer que funcione.

Consulte https://github.com/gaearon/react-hot-loader/issues/1088 .

citado:

Sí. RHL es 100% no compatible con anzuelos. Solo hay algunas razones detrás de esto:

SFC se están convirtiendo en componentes de clase. Hay una razón: poder forzar la actualización en HMR, siempre que no haya un método de "actualización" en SFC. Estoy buscando otra forma de forzar la actualización (como esta. Entonces RHL está matando a SFC.

"procesamiento de reemplazo en caliente". RHL está tratando de hacer el trabajo de React y renderizar la aplicación antigua y la nueva para fusionarlas. Entonces, obviamente, eso está roto ahora.

Voy a redactar un PR, para mitigar ambos problemas. Funcionará, pero no hoy.

Hay una solución más adecuada, que funcionaría: API fría

Puede deshabilitar RHL para cualquier tipo personalizado.

 import { cold } from 'react-hot-loader'; cold(MyComponent);

Busque "useState/useEffect" dentro del código fuente del componente y "frío".

Actualizado:

Según la actualización del mantenedor de react-hot-loader, puede probar react-hot-loader@next y establecer la configuración de la siguiente manera:

 import { setConfig } from 'react-hot-loader'; setConfig({ // set this flag to support SFC if patch is not landed pureSFC: true });

Gracias a @loganfromlogan por la actualización.

over 4 years ago · Santiago Trujillo Relatório

0

Mi problema fue olvidar actualizar el módulo react-dom . Ver problema .

over 4 years ago · Santiago Trujillo Relatório

0

Tenía el mismo problema. Mi problema estaba relacionado con React Router. accidentalmente había usado

 <Route render={ComponentUsingHooks} />

en vez de

 <Route component={ComponentUsingHooks} />
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda