在React Native中使用AsyncStorage

时间:2018-10-01 00:59:35

标签: reactjs react-native

这是我第一次使用AsyncStorage,但对继续前进一无所知。

所以我必须基本上将所选的用户币种保存在AsyncStorage

默认情况下,只要用户再次应用该应用程序并且我通过美元(就是这样)

  componentDidMount() {
  if (this.props.currencyLoaded.length == 0 || !this.props.currencyLoaded) {
      this.props.CurrencyRate("usd") //Being passed to redux
    }

现在,我想了解如何保存用户先前选择的值。 使用该值代替我上面传递的“ usd” (因此检索该值)

用户选择的价值/货币是这个

this.props.currencyLoaded[0]["currencyName"] 

所以上面的代码段应该像

 this.props.CurrencyRate(AysncStoredValue)

问题:有人可以帮助我实现这一目标吗?

1 个答案:

答案 0 :(得分:0)

如果我正确阅读了您的问题,那么您正在询问如何在# This could replace the current plotly text, which has plotly calculate the percentage, which seems to be happening for the whole and not at the continent level. text = ~paste(Country, share_of_cont) 中存储和访问您的值。这可以像在React中使用AsyncStorage一样完成。

要存储值:localStorage

要从存储中获取该值:AsyncStorage.setItem('@myLocalStore:keyToSave', 'some-stringified-value');

注意::如果要保存字符串以外的内容,则必须将字符串化的值保存到AsyncStorage中,然后在将其拉回时将其解析。

我不确定您的确切用例,因此,您可能只想将AsyncStorage附加到您的redux存储,以便您保存的redux状态与用户选择的币种保持一致。这将要求您将AsyncStorage持久存储添加到您的存储中。这可以通过redux-persist完成:

AsyncStorage.getItem('keyToSave');

注意::我使用Reactotron创建商店,但其语法与普通redux createStore方法完全相同。