Вот мой код:
Код: Выделить всё
import React, { useState, useEffect } from 'react';
function Counter() {
const [count, setCount] = useState(0);
const handleClick = () => {
setCount(count + 1);
console.log("Clicked count:", count); // Always shows previous value
};
useEffect(() => {
console.log("Updated count (useEffect):", count);
}, [count]);
return (
Count: {count}
Increment
);
}
Я подумал, что вызов SetCount (count + 1) немедленно обновит count , поэтому регистрирует его сразу после того, как должно показать новое значение. Значение , а не обновленная. Но регистрирует его внутри использованияэффекта работает.
Что я хочу понять:
Почему SetCount не обновление состояния немедленно? Логика, стоящая за этим, чтобы я мог избежать путаницы при работе с государством в будущих компонентах.
Подробнее здесь: https://stackoverflow.com/questions/797 ... mmediately