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

315
Views
Reaccionar: ¿Cómo llamar a setState dos veces si el segundo depende del primero?

¿Cómo logro esta lógica simple en reaccionar si el segundo gancho setState depende de que el primero cambie primero? En este ejemplo, el primer valor de setState no se actualiza lo suficientemente rápido antes de ejecutar el segundo setState. He intentado poner el segundo en un tiempo de espera, así como ponerlo dentro de una función de devolución de llamada del primero. No funcionó. UseEffect podría resolver este problema, pero en este caso en particular necesitaría llamar a useEffect solo en el primero y no cada vez que haya un cambio de estado. Déjame saber lo que piensas.

 function blah(arg) { if (condition) { setState(arg) } setState(state + 1) }
about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

El estado de React no está destinado a funcionar como una variable. Cuando llama a setState , simplemente le está diciendo al código qué valor se supone que debe usar en la próxima representación del componente. Nunca establecerá el valor inmediatamente.

Si necesita que se comporte como una variable, simplemente use variables y llame a setState una sola vez al final.

 function blah(arg) { let aux = state; if (condition) { aux = arg; } setState(aux + 1); }
about 4 years ago · Juan Pablo Isaza Report

0

necesitas usar el gancho useEffect:

 const [state, setState] = useState(); useEffect(() => { // get executed whenever state is changed }, [state]) function blah(arg) { if (condition) { setState(arg) } }
about 4 years ago · Juan Pablo Isaza Report

0

Primero cargue la función

 import React, { useState, useEffect } from 'react';

Después

 const [ListValue, setListValue] = useState([]); useEffect(() => { console.log(ListValue) }, []) function blah(arg) { if (condition) { setListValue(arg) } }
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!