防止反应本机中的过时数据



这将是一个更开放的问题,也许不仅限于反应原生。

我有一个典型的搜索列表,取自我们的后端。我正在尝试找到防止向用户显示陈旧数据的最佳方法 - 特别是如果他们最小化应用程序并稍后返回它。我正在考虑使用 https://github.com/ocetnik/react-native-background-timer 这个,但也许有更好的方法来实现这一目标?

另外作为一个快速说明,我的堆栈是:反应导航,redux,redux-persist

一个好问题,但我的答案不会在代码范围内。

每当用户看到数据时,数据就会过时。

从产品制造商的角度来看。使数据缓慢到过时的最佳方法是"不要显示您拥有的所有内容"。

那么,我们如何才能实现这一理论呢?

几乎民族并不真正注意他们所看到的。他们会尽快忘记任何事情,什么不会让他们的眼睛。

因此,您不需要计时器系统来检查和随机播放数据。跟踪用户行为是一种更复杂但有效的解决方案。

它可以在您的客户端或服务器中完成。

简单的例子:

存储用户看到您的数据的时间点(可能在 AsyncStorage 中),制定一个逻辑来检查并选择下次用户回来时续订或不续订。

这是比使用定时器系统更简单和轻量级的解决方案。

更复杂的示例:

跟踪用户会话、他们查看的内容类型以及他们在此内容上花费的时间。

将查看的内容替换为他们查看的事物的关系内容。

Note: The rn-background-timer work not as good as they advertised.

如果我正确理解了您的问题,您实际上不需要使用单独的库来实现所需的行为。

您已经有一个来自 react-native 的 AppState 原生事件和来自 react-navigation 库 (addListener) 的侦听屏幕状态的事件。您可以合并这些事件并检测应用的更改,并重新呈现搜索结果或重置数据。

最新更新