【问题标题】:Can I get values from the local storage using Async Storage from React Native?我可以使用 React Native 的异步存储从本地存储中获取值吗?
【发布时间】:2019-10-17 16:06:59
【问题描述】:

我是 React Native 的新手。有一个用 Objective-C for iOS 和 Java for Android 编写的本机应用程序。我的任务是使用 React Native 添加另外两个屏幕。一般解决方案是here

本机代码已经使用本地存储来存储永久数据(例如,有关授权用户的数据)。同时,React Native 使用 Async Storage 来处理永久数据。

我可以使用 React Native 的异步存储从本地存储中获取值吗?

【问题讨论】:

    标签: java android ios objective-c react-native


    【解决方案1】:

    您需要使用setItem() 设置数据,使用getItem() 获取数据。 设置数据:

    await AsyncStorage.setItem('key', 'data');
    

    获取数据:

    await AsyncStorage.getItem('key');
    

    React Native 中的异步存储:https://facebook.github.io/react-native/docs/asyncstorage#docsNav

    【讨论】:

    • 我认为他的问题是android端无法访问AsyncStorage。
    • 真正的异步存储不适用于 Android。但这不是问题。我已经有一个用本地代码编写的现成应用程序,它使用本地存储。在异步存储的帮助下,我无法获取应用程序已经使用的本地存储的数据。这就是为什么@DNA.h 似乎是最正确的答案。
    【解决方案2】:

    据我所知,AsyncStorage 在 iOS 端使用 Dictionary,在 android 端使用 SQLite。这两者在 React Native 端都无法访问。你应该在本地端和 React Native 之间写一个桥接器,以便允许在两端之间传递数据,这个 https://github.com/sriraman/react-native-shared-preferences 库就是一个很好的例子,它允许 React Native 访问本地本地共享首选项,反之亦然。

    【讨论】:

    • 感谢您的回答,我现在将根据它做出决定。
    • 有没有为ios写过类似的东西?有没有人尝试过使用this library
    猜你喜欢
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 2020-09-18
    • 1970-01-01
    • 1970-01-01
    • 2021-03-18
    • 1970-01-01
    相关资源
    最近更新 更多