react父组件在调用setState后,子组件数据未刷新的问题

首先贴一波react组件的生命周期图:

react父组件在调用setState后,子组件数据未刷新的问题

子组件的代码,其构造函数内初始化了自己全新的state,数据是props传入的data,在render函数内通过this.state取数据,这样当父组件调用setState之后,而子组件state里面的数据并没有发生变化,这就导致子组件并没有去调用render重新渲染页面,这种情况即使是调用forceUpdate方法也没用。

现在的改法是在props更新之前对子组件的state进行更新,这样才达到了子组件重新渲染的目的,这种改法比较暴力,本人第一次接触react框架,现在正在踩坑途中。。。

react父组件在调用setState后,子组件数据未刷新的问题