反应本机是否有简单的同步存储选项?

时间:2016-04-27 23:23:57

标签: react-native

我有一个用于我的本机应用程序的同步存储的用例。

在应用呈现主视图之前,我想检查本地存储上是否存在会话令牌,如果可用则继续,否则想要将登录组件呈现为初始视图。

使用同步存储将简化代码。

4 个答案:

答案 0 :(得分:10)

我认为没有简单的同步存储选项。根据{{​​3}}回答,localstorage未在核心IOS javascript引擎中实现。 AFAIK其他选项(如this localstorage polyfill中使用的选项)不起作用。这让我们需要一个反应原生模块,这是设计上的异步。来自this

  

React Native bridge是异步的,因此将结果传递给JavaScript的唯一方法是使用回调或发出事件

所以我认为Async是要走的路。

答案 1 :(得分:3)

对于那些正在寻找此事的人, 我找到了满足这种需求的npm包

react-native-sync-localstorage

答案 2 :(得分:1)

我有类似的情况,发现Realm支持同步读取,这是我需要的。对于单令牌存储,Realm有点大。我将AsyncStorage用于其他一切。如果您找到更简单的解决方案,请告诉我。

答案 3 :(得分:0)

没有任何与Native Mobile开发类似的解决方案,例如Android中的SharedPreferences。

本机方式:大多数操作都是同步的。 (例如从存储中读取等),某些操作是异步的。(http请求,加载图片)

本机反应方式:几乎所有操作都是异步的。这由@Ryan Harmuth的答案解释。

因此,让我们开始使用Redux作为解决方案。 :)