ReactJS状态数组推送问题



我在react状态钩子中有一个数组。我以一种我认为正确的方式向它推送值,但当我试图记录它时,数组总是空的。那么我向数组推送值的方法不正确呢?

const [betHistory, setBetHistory] = useState([""]);

在我的函数内部(我测试过的函数正在被调用,betCount从不为空(

function placeBet() {
console.log(betCount);
setBetHistory(betHistory => [...betHistory, betCount.toString()]);
console.log(betHistory);
}

日志始终为空。

设置状态将在下一次渲染时更新值,而不是立即更新。如果您需要立即访问更新后的值,请将其存储在一个变量中:

function placeBet() {
const newBetHistory = [...betHistory, betCount.toString()];
setBetHistory(newBetHistory);
console.log(newBetHistory);
}

最新更新