Reactjs ComponentWillReceiveProps总是在渲染之前调用,还是以其他方式调用

Reactjs ComponentWillReceiveProps总是在渲染之前调用,还是以其他方式调用,reactjs,react-native,redux,Reactjs,React Native,Redux,我试图从ComponentWillReceiveProps发送一个动作,然后调用减速机。减速器数据用于部件中。 我得到了变量未定义的错误。 我认为在执行ComponentWillReceiveProps之前已加载渲染 因此,我想询问是首先加载渲染还是componentWillReceiveProps。在渲染之前调用componentWillReceiveProps 下面是一张图表,其中生命周期在以下情况下被调用(直到React 16.3): *其中,“初始化/设置道具和状态”是构造函数 新的

我试图从ComponentWillReceiveProps发送一个动作,然后调用减速机。减速器数据用于部件中。 我得到了变量未定义的错误。 我认为在执行ComponentWillReceiveProps之前已加载渲染


因此,我想询问是首先加载渲染还是componentWillReceiveProps。在
渲染之前调用
componentWillReceiveProps

下面是一张图表,其中生命周期在以下情况下被调用(直到React 16.3):

*其中,“初始化/设置道具和状态”是
构造函数

新的生命周期

值得注意的是,
组件将接收props
是因为React
16.3
。传统生命周期将从React 17起删除

以下是每个React版本在什么时刻使用的生命周期的动态图:


您可以阅读有关组件生命周期的更多信息。

答案是

注意:组件将在React 16.3中使用getDerivedStateFromProps接收道具

请检查:

另外,请查看组件创建生命周期组件更新生命周期 还有做什么和不做什么,这是非常重要的

创意生命周期挂钩:

更新生命周期挂钩:

可能存在的副本