dva使用antd的Modal.confirm时获取到的state值不是实时的

1.问题:在使用antd的Modal.confirm时放入一个Input,来更新state中的txNote属性。但是只要出现confirm,获取到的都是先前的state,而不是在confirm中输入后更新的state
2.截图:
初始confirm

初始state

在confirm中输入之后的confirm

confirm中输入后的state

点击通过之后打印出来的state

3.从上到下依次为:

1.初始状态confirm
2.初始状态state,其中txNote为""
3.输入内容后的confirm
4.输入内容后的state,其中txNote已经更新了
5.点击通过之后,我在该处理函数中打印出state,结果txNote还是""

4.在redux开发者工具中跟踪查看确实state更新了。排除state没有更新的原因。
5.猜想:

是不是在confirm出现的时候,获取到的一直是先前的state,因为当我下一次confirm时,点击确定的时候打印出来的txNote是我上次输入的内容
阅读 8.9k
2 个回答

肯定在某个步骤中将state的值重置了。
你都猜想了,那就一步一步debugger吧。

是的,Modal.method有这个问题,应该是它会重新生成一个新的Modal,参数就是生成时的state参数,生成后不会随state变化而跟新

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题