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

183
Visualizações
sincronizar correctamente las operaciones de función en un gancho React

Considere el siguiente código dentro de un enlace personalizado de React:

 function createFadeOut() { if (!isDown && fading) { if (lineQueue.length !== 0) fadeOut(lineQueue.shift()); else addLine(line => { return []; }); } if (isDown && fading) { console.log('DOWN!'); } } function fadeOut(line) { //code } } setInterval(createFadeOut, 60);

Entonces, lo que quiero es que suceda un conjunto de acciones en un intervalo de tiempo discreto, según el estado del mouse y otro evento. isDown se establece cuando se llaman los eventos del mouse. el desvanecimiento es un estado booleano que solo se llama al hacer clic en un botón.

El comportamiento específico es que una lista emerge de un elemento y llama a una función cada 60 fotogramas cuando el mouse está arriba, Y la lista y otras acciones se restablecerán si se vuelve a presionar el mouse.

Por supuesto, estoy luchando para configurar correctamente el comportamiento.

  • isDown no representa el estado del mouse en absoluto cuando se llama a la función mediante un setInterval. La mayoría de las veces, siempre se establecerá en verdadero cuando ya dejé el mouse solo.
  • El uso de un gancho useEffect, por lo que siempre representa el estado real del mouse, es problemático, solo se llamará cuando ocurra un renderizado y no en un intervalo.
  • Los mismos problemas si solo coloco la función en los eventos del mouse y uso setTimeouts, especialmente debido a que mouseUp solo se llama en algunos cuadros.
about 4 years ago · Juan Pablo Isaza
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