lac*_*che 5 state reactjs react-native use-state
为什么第一次点击时状态没有改变?
const [building, setBuilding] = useState(0);
Run Code Online (Sandbox Code Playgroud)
<Button
title="tester"
onPress={() => {
setBuilding(1);
console.log(Building);
}}/>
Run Code Online (Sandbox Code Playgroud)
第一次单击时控制台日志始终返回“0”,而不是预期的“1”。我该如何解决?
Rob*_*ell 14
由于状态更新是异步的,您可能会通过将构建添加到 useEffect 依赖项来看到状态值更新,从而使其在构建值发生变化时触发。
const [building, setBuilding] = useState(0);
useEffect(() => {
console.log(building);
}, [building]);
return (
<button
title="tester"
onClick={() => {
setBuilding(1);
}}
>
test
</button>
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30929 次 |
| 最近记录: |