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

149
Vistas
¿Cómo actualizar el estado cuando la API devuelve el valor anterior usando javascript?

tengo que recuperar un valor de api y almacenarlo en un estado. pero el valor devuelto por la API de ejecución es siempre el valor anterior de la ejecución.

así que considere que tengo 2 botones run1 y run2. al hacer clic en cualquiera de ellos, se llamará a la misma API de ejecución para ese elemento.

cuando se hace clic en run1 isComplete es verdadero desde api y para run2 isComplete es falso desde api.

cuando no se hace clic en ninguno de los botones run1 y run2, los datos devueltos no están definidos para el elemento y, por lo tanto, isComplete tampoco está definido. los datos son como a continuación,

 data = [ { isCompleteRun: true,//this can be true or false } ]

Ahora, si el usuario hace clic en Run1 btn, obtengo runinprogress true. e isComplete: verdadero, si se hace clic en run2 btn, runinprogress es verdadero e isComplete es falso.

tengo que mostrar dos elementos div basados en el valor de isCompleteRun.

 {isRunInProgress && isCompleteRun && <div>first</div>} {isRunInProgress && !isCompleteRun && <div>second</div>}

pero el problema es que isCompleteRun es el valor anterior a menos que se haga clic en el botón de ejecución. ¿Cómo puedo guardar isCompleteRun en el estado y actualizar el valor cada vez que se hace clic en ejecutar?

a continuación se muestra el código,

 const isCompleteRun = React.useMemo(() => { return data?[0]?.isCompleteRun; }, [data]);

el valor de isCompleteRun es siempre el valor de los datos anteriores durante algún tiempo, a menos que se haga clic en el botón de ejecución o no esté definido cuando no se hizo clic en ningún botón de ejecución por primera vez. alguien podría ayudarme a arreglar esto. Gracias.

about 4 years ago · Juan Pablo Isaza
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