【发布时间】:2017-03-29 11:32:04
【问题描述】:
所以我有一个按钮。当您单击该按钮时,它会将您带到一个如下所示的 onSubmit 函数:
onSubmit(e) {
e.preventDefault();
this.props.nextSentence(); //this is async
this.setState({ //this is not yet updating with the right values then
inputField: this.props.activePupil.name
});
}
但是:this.props.nextSentence(); 是异步的,所以当我立即设置状态时,没有任何变化。现在我有第二个按钮,它指的是第二个功能,它只是再次设置状态。不过,我希望这种情况自动发生。我怎么能这样做?
【问题讨论】:
-
你为什么不想要结果然后设置状态?使用 then(...)
this.props.nextSentence.then(value => this.setState ({ ... })) -
也许您可以尝试将您的状态设置为道具并在包含回调 nextSentence 的父级中更改它?
-
你可以使用 Promise 来处理这种情况
标签: javascript reactjs react-native react-redux