我们可以同步访问react app中已更改的reducer状态吗?

时间:2017-09-08 08:13:38

标签: javascript reactjs redux

我已经调度了一个不包含任何异步代码的动作,例如ajax调用或任何改变reducer状态的东西。我可以在react应用程序的下一行中访问更改的reducer状态吗?

反应APP

actions.setName('Test'); //this sets the name in state of reducer to Test
//Can I access the name in the next line
const name = this.props.name;

3 个答案:

答案 0 :(得分:1)

let response = await this.props.appAction.processList(token, userName);
prodArray = this.props.processList;

这是我的示例代码,它的工作原理。也许它可以帮到你。 await关键字对我有用。

答案 1 :(得分:1)

Redux商店的状态本身会立即更新,因为调度是同步的。但是,React的重新渲染几乎总是异步的,所以不,在调度动作后,对于道具的更新立即可用。

答案 2 :(得分:0)

刚刚发现我们不能立即更新状态并在下一行中作为道具提供。

获得更新状态的唯一方法是组件重新渲染时。你不能指望下一行在任何时候都有最新状态。

请参阅此讨论,以进一步了解如何解决此问题。

Click for the discussion thread