我目前正在开发一种工具,可以读取Excel文件并将其显示在webApp中。我在Excel中将每个工作表分成不同的选项卡。当切换Tabs时,它需要2秒钟。那是因为Excel - > Json的长度是8000+行。它可能是无法处理如此巨大的Json的redux。
我做了一些研究,但我不知道我的解决方案是否有效。如果是这样哪一个会是最好的?
也许某人有更好的解决方案来处理大数据。
Redux可以处理大量数据,在这种情况下不应该是一个问题。它更有可能是重新出现的问题。即使不在视图中的选项卡也可能会在它们之间进行交换时重新渲染,以测试此删除额外的选项卡,直到您只有2并测试它们之间的点击并查看重新渲染所需的时间。阅读docs here中的性能部分。
处理大量数据时,微观优化确实可以提供帮助。如果您正在使用Container component, Presentational component pattern,请确保您的表示组件使用PureComponent子类。这将帮助你戒掉那些吃记忆的人。
PureComponent的替代品是componentShouldUpdate,您可以指定何时应该进行更新/重新呈现的规则。
在反应开发工具中有一个复选框,可以让您检查组件何时重新呈现,请检查并开始在您的应用程序中移动。它将向您展示所有被解雇的无意义的重新渲染。
另一种帮助优化的方法是延迟加载,“为什么在屏幕只能容纳100时显示8000条记录?”。这有两个效果,你不会得到你不会看到的数据,你不会渲染不在屏幕上的单元格。
我希望这能让你知道如何前进,祝你好运。