猿问

在 React Web 应用程序中使 Redux 商店无效/刷新?

我们正在将一个相当复杂的 Web 应用程序迁移到 React/Redux 架构。

我一直无法找到答案的一个主要设计问题是,存储在 redux 中的数据应该如何“刷新”?

例如,假设我items在像/items. 现在用户想要查看特定项目并转到/items/<id>

据我了解,流程应该类似于,根据/items请求,我们发出 API 请求并将我们所有的项目存储在 redux 存储中。当用户单击特定项目时,我们会从 Redux 存储中挑选该特定项目,因为我们已经拥有数据,因此无需发出新的 API 请求。

这一切都很好。但问题是,“无效”这些数据的正确模式是什么?

比如说,用户加载列表items并离开那里的计算机几个小时。现在该列表items理论上已与服务器过时。

那么,如何使存储与服务器保持同步呢?


POPMUISE
浏览 215回答 2
2回答

开满天机

您可以使用以下方法之一:1) 短轮询(即不时轮询您的服务器并更新商店项目)2)长轮询(您打开连接,保持它直到服务器上的数据发生变化,然后服务器向您发送新数据并关闭连接,您重新打开它等等......)3) 使用 websockets 进行实时更新,提供双向通信(这意味着服务器可以将数据推送到客户端)

月关宝盒

是不是当状态改变时,react 会自动重新渲染组件,这可能不是你想要的,但是你所说的“无效”这些数据的正确模式是什么意思?像 30 分钟它会调度一个动作结帐状态改变?
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答