react-native - 如何等待 setState 完成然后在 React Native 中执行代码?
问题描述
如何等待 setState 完成然后在 React native 中执行代码?我有一个if else
我只想在 setState 完成后执行的块。我的代码:
setModalVisible(false);
if (modalVisible === false) {
dispatch(updateUser(r.data));
} else {
NavigationHelper.navigate('Login');
}
解决方案
你可以用它useEffect
来实现你的目标。您可以跟踪状态更改并在状态更改时执行代码。
例子:
const [value, setValue] = useState(false)
useEffect(() => {
if (value) {
// trigger when value becomes true
} else {
// trigger when value becomes false
}
}, [value])
return (
<button onClick={() => setValue(true)}>Set to true</button>
)
推荐阅读
- c# - uwp ink 手写识别在 windows 10 iot core 上失败
- node.js - 无法使用护照 nodejs 在 docker google vm instace 中验证 facebook 应用程序
- protractor - 如何在量角器中的单个描述中使用多个数据提供者
- ios - SQLite从JSON对象ios插入多行
- excel - 如果满足条件,则复制和粘贴数据
- amazon-web-services - AWS 在使用 SDK 时承担角色访问被拒绝
- python-3.x - 将上下文菜单添加到特定的 Qtablewdiget 表列,Python
- python - 蛇动画
- wso2 - WSO2 ESB/EI:如何将原始 JSON 正文转换为 XML 有效负载
- javascript - 如何从服务器的子文件夹中使用 socket.io?