我试图从父函数调用处理程序,并将更新的状态值作为参数,但是,在调用 setSelected 后状态不会立即更新,因为两个控制台日志都打印 false(初始值)。但是,在 onClick 函数完成后,它会更新。
onClick={() => {
console.log("Clicked: ", props.rank, props.suit, selected);
setSelected(!selected)
console.log("selected: ", selected)
// props.handle_card_selected(props.id, selected)
}}
useEffect(() => {
const check_border = () => {
if (selected) {
return "green"
}
return "black"
}
check_border()
}, [selected])