假设您的状态如下
const [elements, setElements] = React.useState([]);
我注意到的奇怪的事情是,当使用接受一个函数的setter时,它似乎执行了两次控制台日志(log),我不知道为什么.有什么解释吗?
const handleAddClick = (e) => {
console.log("button clicked");
setElements((elems) => {
console.log("set elements called");
return [...elems, "abc"];
});
};
Output个
button clicked
set elements called
set elements called