React native getItem(“item”)返回字符串“[object object]”

React native getItem(“item”)返回字符串“[object object]”,react-native,React Native,我使用AsyncStorage在我的应用程序中保存会话,我在下面的代码中这样做: 如果有结果{ 如果signInResult.userId&&signInResult.accessToken{ 等待AsyncStorage.setItemauth,signInResult; } this.props.navigation.navigatehome; } 但是,当我尝试使用AsyncStorage.getItemauth返回数据时,它只检索字符串[object] 我调整了代码a,但在控制台中编写了

我使用AsyncStorage在我的应用程序中保存会话,我在下面的代码中这样做:

如果有结果{ 如果signInResult.userId&&signInResult.accessToken{ 等待AsyncStorage.setItemauth,signInResult; } this.props.navigation.navigatehome; } 但是,当我尝试使用AsyncStorage.getItemauth返回数据时,它只检索字符串[object]

我调整了代码a,但在控制台中编写了一些东西,以便能够对数据进行跟踪,下面是我目前遇到的情况:

因此,在异步存储之前和之后,我记录了相同的数据。首先,我们看到该对象在很大程度上仍然是一个javascript对象,第二个显然只是类型的名称。我不确定这里发生了什么,但我很确定这应该行得通。实际上,我在另一个应用程序中使用了相同的方法,我没有这个问题

提前感谢。

您需要在保存和从异步存储获取数据时解析JSON.stringify&JSON.parse

如果有结果{ 如果signInResult.userId&&signInResult.accessToken{ 等待AsyncStorage.setItemauth、JSON.stringifysignInResult; } AsyncStorage.getItemauth.item=>{ JSON.parseitem; }; this.props.navigation.navigatehome; }
是的,就是这样。这让我想知道为什么代码在另一个应用程序上有效。谢谢