【问题标题】:What is the equivalent of UserDefaults in React Native for both iOS and Android什么是 iOS 和 Android 的 React Native 中的 UserDefaults 的等价物
【发布时间】:2021-04-01 16:51:30
【问题描述】:

我想在我的 react native 应用程序中登录成功时保存用户信息,如 id、电子邮件等。现在来自 iOS 后台的一种方法是使用 UserDefaults 来存储信息,即使应用程序被杀死并再次打开,也会保留这些信息。

通过搜索,我发现一种方法是使用 AsyncStoage,但现在我收到一个警告,我将如何在 React Native 中实现类似 NSUserDefaults 的功能?

【问题讨论】:

  • 是的,您可以为此使用异步存储。此外,警告还准确地告诉您要消除警告需要做什么。

标签: reactjs react-native nsuserdefaults


【解决方案1】:

npm i @react-native-community/async-storage

并在 iOS 和 Android 上关注 installation

并将您的导入更改为:

import AsyncStorage from '@react-native-async-storage/async-storage';

写入字符串值:

const storeData = async (value) => {
  try {
    await AsyncStorage.setItem('@storage_Key', value)
  } catch (e) {
    // saving error
  }
}

读取字符串值:

const getData = async () => {
  try {
    const value = await AsyncStorage.getItem('@storage_Key')
    if(value !== null) {
      // value previously stored
    }
  } catch(e) {
    // error reading value
  }
}

【讨论】:

  • 实现这个[Error: undefined Unable to resolve module @react-native-async-storage/async-storage from src/components/CreateAccount.js: @react-native-async-storage/async-storage could not be found within the project.出现错误
  • 如果您在 iOS 上使用,请查看此处:stackoverflow.com/a/57248950/4557781
猜你喜欢
  • 2020-04-23
  • 2017-05-05
  • 1970-01-01
  • 1970-01-01
  • 2019-08-13
  • 2012-08-30
  • 1970-01-01
  • 2014-09-30
  • 1970-01-01
相关资源
最近更新 更多