reactjs - 反应 SetState 不立即更新状态
问题描述
在删除单击时,我正在调用一个模式对话框,并使用删除成员的相应用户 ID 更新“用户 ID”状态。setState 函数不更新值。我怎样才能以任何其他方式实现这一目标。
删除点击处理程序
handleClickDialogOpen = (userid) => {
this.setState((state) => {
return {
open: true,
UserID: userid,
};
});
console.log(this.state)
};
在模态对话中,在删除按钮上我无法获取 userId 的值
<Button onClick={() => deleteSP(this.state.userID)} className={classes.agree}>
Delete
</Button>
如何传递“deleteSP”的 ID
解决方案
setState 是异步的,你可以像这个例子那样做一个控制台日志,因为这个函数会在 setState 完成时触发
handleClickDialogOpen = userid => {
this.setState({
open: true,
UserID: userid,
},
() => console.log(this.state),
);
};
推荐阅读
- java - 如何使用 Swagger codegen 在 Java 中生成复制构造函数
- windows - 是否有一个 Windows 应用程序与 Chrome 开发工具的网络选项卡完全一样?
- java - Android NDK 抛出信号 SIGSEGV:通过 JNI 在 Activity 中获取 GoogleSignInClient 后地址无效
- c# - 实体框架继承和关系
- c# - WCF 文件有 3 个不同的 .cs 文件(服务、合同、接口),用于 UI 解决方案的 WebForm,请解释
- c++ - Choose type of class members at run time
- ibm-midrange - CL 中字符串中字符的最后出现次数
- sql - 引用相同主键的两个外键被用作复合键[ERD]
- apache-nifi - 如何从 nifi 连接中的队列中获取流文件列表?
- angular - 当我尝试将月份的名称输入为数字时,月份的名称变为一月。当我输入为文本时它工作正常