首页 > 解决方案 > 反应:总是获取数据或保存数据前端

问题描述

所以我正在用 React 开发一个 IoT SaaS 项目。用户选择一个传感器和一个时间范围,并以大约 5 分钟的分辨率接收以图表形式显示的数据。我的问题是关于在前端处理获取和保存此数据时的最佳实践。我一直尝试获取工作正常的方法,但会使系统有点慢。当用户在传感器之间快速来回切换时尤其如此。我也尝试过保存数据,就像反应状态下的 json 一样。这显着提高了性能,但还有很多其他问题。浏览器开始抱怨 ram 的使用,有时会出现内存不足的错误。还有很多需要的数据处理,例如为同一个传感器保存多个非连续数据范围,定位和合并日期范围重叠等......

所以我想知道这里的最佳做法是什么,我应该总是在前端获取还是保存?有没有我可以使用的框架来帮助我处理数据前端,或者我必须手动执行此操作。

标签: reactjsiotdata-handling

解决方案


将所有数据保存在前端是一种反模式。因为内存和不同步问题。为了使您的系统看起来更快并使用后端数据,您可以尝试以下操作:

  1. 乐观的反应。该技术在执行实际请求时,在前端使用了一些后端逻辑的简化部分。因此,用户将在后端数据到达浏览器之前看到结果。假设您正在后端进行 +1 操作。用户发送数字 2 来执行此操作。所以在你的前端你可以使用一些东西const optimisticResponse = (userData) => userData + 1。然后,当您从后端获取数据时,您可以覆盖所需的值
  2. GraphQL允许您通过仅向后端询问您需要的数据来减少开销。

推荐阅读