关于反应还原的状态

时间:2017-03-26 01:41:39

标签: javascript reactjs redux

我正在使用Redux编写SPA来管理我的状态。有一个连接到redux存储的逻辑组件,它有一个子组件,它通过props将'posts'状态传递给子组件。在子组件的渲染功能中:

const {onShow,posts} = this.props;

效果很好;只是帖子会随redux商店而改变。但是在其componentDidMount()函数或构造函数中,帖子不会随着redux存储而改变,那么它怎么可能发生?

componentDidMount(){
   const {posts} = this.props;
   console.log(posts)
}

以下是完整的组件code。它是关于Lists组件和Posts组件。

1 个答案:

答案 0 :(得分:0)

据我所知,您想知道为什么您无法在componentDidMount()中看到状态更新的反映。

这是因为在创建反应组件的实例并将其插入DOM时会调用componentDidMount函数。它被称为反应组件生命周期的安装阶段。

为了能够看到您对redux状态更新的反映,您需要使用在更新阶段调用的函数,例如:

  • componentWillReceiveProps()
  • componentDidUpdate()
  • shouldComponentUpdate()

要获取更多详细信息,请查看组件生命周期文档:

https://facebook.github.io/react/docs/react-component.html