请帮助我做出决定,关于使用哪种技术。
我有一个很大的列表(最多百万行),它保持在redux状态。一旦用户输入过滤条件,我想要应用过滤并显示过滤后的数据(实际上是使用react虚拟化的部分数据)。
我确实理解,理想情况下,这是一个简单选择器(或记忆重选)的用例。
我看到的问题:过滤本身可能需要2-3秒,因此,我必须使用去抖动。对于去抖动,我必须使用中间件,因为去抖动是异步的和不纯的。
effect (epic)可以从状态中获取数据并充当异步选择器吗?或者可能在选择器中有一些实现去反跳的模式?
感谢您的建议。
发布于 2020-05-31 02:40:27
我有一个很大的列表(最多百万行),它保持在redux状态。
真的?你犯了一个大错。这将消耗大量内存。并且某些浏览器可能不能正确响应它们。
因此,我建议您从数据库结果中应用过滤。在应用每个过滤器时,应用程序需要从数据库中获取结果,比如最多10、20、50或100。
从这个意义上说,你可以继续使用redux或使用memoized effect,这取决于你的应用程序逻辑/复杂性。这两种方法都可以很好地工作,而不用担心去抖动方法。
https://stackoverflow.com/questions/62106884
复制相似问题