javascript - 状态没有在反应 js 中更新
问题描述
下面是我的代码片段
this.setState({
isConfirmationDialogOpen: false,
progress: Progress.Saving
});
let state = { ...this.state };
但它没有更新状态,有人可以告诉我我做错了什么。
解决方案
this.setState({
isConfirmationDialogOpen: false,
progress: Progress.Saving
});
let stateData = { ...this.state };
不要使用与状态相同的名称,也setState
可以使用回调方法执行异步活动。
更新
如果你不想使用这个回调,这是另一种方式。
const state = {
isConfirmationDialogOpen: false,
progress: Progress.Saving
};
this.setState(state);
并使用该state
对象,但这并不能保证您拥有最新的状态,即this.state
推荐阅读
- python - 函数不会将布尔值从 true 更改为 false
- flutter - 有没有办法将图标与文本对齐
- powerbi - 未收到有关 PBI 数据流刷新完成的电子邮件通知
- java - AbstractHttpMessage getParams().setParameter 构造 depcrcated ~ 如何现代化?
- javascript - 项目未显示在桌子上
- python - 在尝试使用 python 中的一种方法将二叉搜索树转换为平衡搜索树时遇到问题
- database - 无法启动数据库实例
- javascript - song.play() 为背景音乐返回“Uncaught TypeError: Cannot read property 'play' of undefined”
- reverse-proxy - 通过 API 进行数据库访问的反向代理设置
- memory-leaks - 升级到 Visual Studio 2019 时内存不足