我正在react-native redux中从api中获取数据,但是当我调用componentDidMount()
函数时,它会获取数据并一次运行一次,但是当我使用{{1}来调用componentDidMount()
时}更新我在设置页面中更改并保存为redux状态的数据,然后我的仿真器被挂起,componentDidUpdate()
函数在第二个类似的循环中运行大量时间。
是否有任何方法可以停止它,并且应该一次运行一次? componentDidUpdate()
个条件?
调用if else
的真正方法是什么?
答案 0 :(得分:0)
componentDidMount()
仅在组件处于安装阶段时立即运行。
在componentDidMount()
中调用componentDidUpdate()
是一种反模式,会导致无限循环,从而导致无限循环。
如果需要使用刚刚从端点获取的数据更新页面,则必须调用componentDidUpdate()
方法。
如果需要在页面上运行另一个更新之前检查prevProps
和this.props
之间的差异。
编辑:您可以参考此页面来检查必须进行反应的不同生命周期。 https://reactjs.org/docs/react-component.html