这将是一个更开放的问题,可能不仅限于本地反应。
我有一个典型的搜索列表,它来自我们的后端。我试图找到防止向用户显示陈旧数据的最佳方法 - 特别是如果他们最小化应用程序并稍后再回到它。我正在考虑使用https://github.com/ocetnik/react-native-background-timer这个,但也许有更好的方法来实现这个目标?
另外作为一个快速记录我的堆栈是:react-navigation,redux,redux-persist
答案 0 :(得分:0)
如果我理解你的问题,你真的不需要使用一个单独的库来达到预期的行为。
您已经有来自react-native的AppState本地事件以及来自react-navigation库(addListener
)的侦听屏幕状态的事件。您可以组合这些事件并检测应用程序的更改并重新呈现搜索结果或重置数据。
答案 1 :(得分:0)
一个很好的问题,但我的回答不会出现在代码范围内。
只要用户看到数据,该数据就会失效。
从产品制造商的角度来看。让您的数据变得陈旧的最佳方法是“不要显示所有内容”。
那么,我们如何实施这一理论呢?
几乎所有人都没有真正关注他们所看到的。他们会尽快忘记任何事情,不要盯着他们。
因此,您不需要计时器系统来检查和随机播放您的数据。跟踪用户行为是一种更复杂但有效的解决方案。
可以在您的客户端或服务器上完成。
简单示例:
存储用户查看数据的时间点(可能在AsyncStorage中),在下次用户返回时制作逻辑以进行检查和选择续订。
它比使用计时器系统更简单轻巧。
更复杂的例子:
跟踪用户会话,他们查看的内容类型以及他们在此内容上花费的时间。
将查看过的内容替换为他们查看过的内容的关系内容。
Note: The rn-background-timer work not as good as they advertised.