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

147
Views
¿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
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!