2017-10-10 53 views
-1

我试图实现一项功能,该功能将显示在应用中是否已读取或未读取项目。例如,用户可以打开某个未读项目,然后将该项目标记为“已读”,并且应该保持“读取”状态,直到该应用程序被卸载或手动清除应用程序数据。React Native - 持久状态的最佳做法

我想知道什么是实现这样的功能的最佳做法。有没有一种方法可以在我的状态下保存这些信息,并且即使在应用程序关闭后,我的状态也会持续存在?或者应该通过AsyncStorage完成?

+0

你使用Redux进行状态管理吗? – alexdriedger

回答

0

对于坚持您的店铺数据,请尝试redux-persist - 作品相当好&简单明了。它在内部使用AsyncStorage作为存储引擎。

+2

您能解释一下投票的原因吗? –

1

项目从哪里来?

你如何解决这个问题取决于你的实现细节。

  1. 这是一个类似电子邮件的项目,其中每个项目都是特定于用户?那么最好的坚持状态的地方可能会在云中,作为项目本身的一部分。 {messageid: 1, userid: 'xyz', read: true}
  2. 它是一个类似聊天的项目,那么它可能也是最好的坚持在服务器上的状态。
  3. 它是一个批量通知,那么最好的地方可能是异步存储。

另一个需要考虑但未提及的因素是如何在多个设备上处理相同的“项目”读/未读状态。它是否需要一致,还是可以在一台设备上读取并在另一台设备上读取?

无论您的具体实施细节如何,我希望这给你足够的咀嚼,并指出你在正确的方向。