在React中,当我调用setState时,它有一个回调来通知我已经设置了状态。但是当我使用Redux时,我使用dispatch来改变状态,但我怎么知道状态是否已经更新。
例如:
"Ltest,Ltest "
第二行依赖于第一行,但我们都知道setState不是同步操作,我怎样才能在Redux中处理这个问题?
答案 0 :(得分:1)
使用redux-thunk模块,您可以从调度的操作返回Promise。对这些动作进行调度(...)将神奇地返回Promises,这样你就可以。(#)对它们进行操作。
另一方面,如果你的动作是同步的,那么setTimeout(...,0)就可以了。
虽然在你的例子中我认为第二个调度应该是一个简单的setState,只要没有外部依赖它,在这种情况下它不应该是本地状态,而是一个组合的动作,它在你的两个行动中执行同时。 redux-thunk也有帮助。
答案 1 :(得分:0)
如果使用mapStateToProps将变量从redux存储区传递给组件作为prop,则可以在组件的render方法中执行 console.log(this.props.variableName) 。只要在商店中更新该变量,就会调用render方法。