【发布时间】:2021-05-15 16:32:29
【问题描述】:
我使用
创建了一个状态变量const [drawing, setDrawing] = useState(false)
然后我有这个按钮应该更新drawing的值
<button onClick={() => toggleDrawing}>Toggle Drawing</button>
toggleDrawing 函数是:
const toggleDrawing = () => {
setDrawing(true)
}
但是当我按下按钮和 console.log 时,drawing id 的值没有更新,它总是落后一步。它以false 的值开始,单击一次后仍为false,第二次单击后切换为true。
【问题讨论】:
-
你没有调用函数
-
您的代码中的
console.log在哪里?setDrawing异步运行也许这就是状态不更新的原因 -
您的 onClick 返回函数而不是调用它。要么传递函数本身而不是匿名箭头函数,要么调用函数而不是/在返回时调用。
标签: reactjs react-hooks