Это популярный вопрос среди всех новых разработчиков, но почему-то я не могу понять логику доступных решений. Я пытаюсь обновить переменную состояния с помощью хуков и пытаюсь прочитать обновленное значение, но всегда возвращает предыдущее значение вместо нового значения. Ниже представлена последовательность выполнения моего кода.
onClick={setTransactionAccountId}
при нажатии кнопки выполняется приведенный ниже код и обновляется состояние, но console.log
показывает старое значение.
const [accountId, setAccountId] = useState(0);
const setTransactionAccountId = e => {
console.log("Clicked ID:", e.currentTarget.value);
setAccountId(e.currentTarget.value);
console.log("accountId:", accountId);
};
журнал консоли:
- первое нажатие кнопки:
Идентификатор клика: 0 accountId: 0
- нажатие второй кнопки:
Идентификатор клика: 1 accountId: 0
может ли кто-нибудь рассказать мне причину такого поведения и как с этим бороться.