Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 数据突发,重复缓冲/反应重新加载_Reactjs_Redux - Fatal编程技术网

Reactjs 数据突发,重复缓冲/反应重新加载

Reactjs 数据突发,重复缓冲/反应重新加载,reactjs,redux,Reactjs,Redux,以下是我的数据流: 1:500+个物体以1-2秒的速度通过插座进入 2:对象直接添加到redux存储 3:React表容器连接到redux存储(将其用作数据源),并为每个对象重新渲染 这么多的重新渲染几乎杀死了浏览器 我有哪些选项可以缓冲传入对象(事件)并每隔1秒将批发送到reducer?更好的解决方案是以某种方式限制react呈现的时间(shouldComponentUpdate…),但我怀疑这是可能的?您可以使用reducer中的临时缓存作为本地数据。在将数据添加到store对象之前,可能需

以下是我的数据流:

1:500+个物体以1-2秒的速度通过插座进入

2:对象直接添加到redux存储

3:React表容器连接到redux存储(将其用作数据源),并为每个对象重新渲染

这么多的重新渲染几乎杀死了浏览器


我有哪些选项可以缓冲传入对象(事件)并每隔1秒将批发送到reducer?更好的解决方案是以某种方式限制react呈现的时间(shouldComponentUpdate…),但我怀疑这是可能的?

您可以使用reducer中的临时缓存作为本地数据。在将数据添加到store对象之前,可能需要一个超时。

您可以使用shouldComponentUpdate中的setTimeout实现自己的节流行为,或者使用类似于

的现成工具。我建议您特别关注RxJS。你要找的是如果我没弄错的话

RxJS有一个非常陡峭的学习曲线,但我已经很快地建立了一个基本的工作解决方案


我从中得到了启发,我鼓励大家听一听。

谢谢,RxJS(
bufferTime
)的解决方案非常简单