hola, tengo un problema con mi código, tengo una función que filtra el estado de los usuarios (usuarios es el estado que contiene a todos los usuarios que agregaron), pero necesito en el mismo evento onclick que 1 eliminaré el objeto actual de la matriz ( y lo hice correctamente)
2 para obtener estos usuarios y contar todo el número después de la eliminación
pero cuando voy a usuarios forEach, no obtiene el estado actualizado y obtiene el anterior, solo se actualizará el segundo clic ... así que después de la función deleteFlight, ejecute su actualización los usuarios sin el número actual, pero cuando empiezo a usar user.forEach no dame el estado de actualización
const [users, setUsers] = useState([]); const deleteFlight = (num) => { const afterFilter = users.filter((user) => { return user.numFlight !== num; }); setUsers(afterFilter); alert("deleted") }; <button onClick={() => { const inp = numFlightInp.current.value; deleteFlight(Number(inp)); users.forEach((user) => { passengerCnt += user.passenger; totalFlightCnt++; }); setFlightCnt2(totalFlightCnt); setPassengerCnt2(passengerCnt); if (!checkDuplicateFlight(Number(inp))) return alert("not found match"); }} > delete </button>