我有一些路由,并且我想在每个路由更改时在客户端获取数据。
我在componentDidMount
中调用fetch函数,如下所示:
componentDidMount(){ this.props.fetchSubmitInitialData(); }
但在render()
函数中,我无法访问新的Redux道具。
答案 0 :(得分:0)
我如何识别在渲染功能中收到的数据
从某种意义上说,您无法识别已收到数据,您的渲染功能只是呈现任何状态的视图。这只是状态(或从redux状态存储传递的道具)在收到数据时发生变化。因此,下次调用numb = [x for x,y in enumerate(data['column']) if 'sub-string' in y]
print len(numb)
时,它会针对更新的值运行,并为您提供当前状态的更新视图。
这是一个按时间顺序排列的例子:
假设您的初始状态如下所示
render()
因此,在组件呈现的这个阶段,state:
loading: true
loaded: false
data: null
为state.loading
,因此您可以显示Loading ...消息,例如
当安装组件时,您获取数据,因此发生调用并返回数据,并且状态更新为例如。
true
现在,您的渲染函数看到state:
loading: false
loaded: true
data: {'hello': 'world'}
为state.loaded
,因此可以继续为true