会话之间的React-native存储数据

Mic*_*cki 7 storage android user-input ios react-native

我需要在会话之间存储一些用户数据,例如设置,登录,令牌等.尝试了异步存储,但是当我重新启动应用程序时,其中的数据将被删除.找到了一些引用钥匙串或NSUserDefaults的模块,但我不知道哪个模块和任何模块都有用.
主要功能是即使应用程序被杀死并重新启动后,我也可以获取该数据.主要是在iOS上,但如果它也在Andorid上,那就太好了.
有人有过一些经验吗?

编辑:
我尝试使用asyncstorage.但是当你杀死并重启应用程序时,它没有做任何事情.
我存储数据的代码:

 AsyncStorage.setItem("prefix", responseData['prefix'])
 AsyncStorage.setItem("api_token", responseData['api_token'])
Run Code Online (Sandbox Code Playgroud)

并检索数据:

async _checkAutoLogin(){ 
    var prefix;
    var token;
    try { 
       prefix = await AsyncStorage.getItem("prefix");
       token = await AsyncStorage.getItem("api_token"); 
} catch (error) { 
      AlertIOS.alert('AsyncStorage error: ' + error.message); 
    } 
Run Code Online (Sandbox Code Playgroud)

jas*_*ino 9

AsyncStorage应将您的数据保存到设备,以便您可以访问它,无论您的应用程序先前是否已发送到后台或已冷启动.如果您尝试使用await关键字,我认为您需要执行一些额外的设置才能使其运行.这是一篇很好的文章,可以帮助您实现这一目标.

此外,根据您打算使用AsyncStorage的程度,React Native网站会说:

建议您在AsyncStorage之上使用抽象而不是AsyncStorage直接用于除了轻量级用途以外的任何抽象,因为它全局运行.

我已经编写了一个名为react-native-simple-store的小包装器,它只包含AsyncStorage并公开了一个简约API,但默认情况下为JSON.stringifying和JSON.parsing提供更复杂的值,所以你没有担心它.

或者,如果您最终需要更多本地数据库,那么还有其他模块.

希望有所帮助!


Zyg*_*gro 0

https://facebook.github.io/react-native/docs/asyncstorage.html#content可能可以解决问题。它说它是持久存储,这可能意味着您正在寻找的质量。