AsyncStorage.getItem 返回未定义

AsyncStorage.getItem is returning undefined

我正在我的操作文件中使用 AsyncStorage 设置一个 'session' 变量:

axios
...
// Session variable
AsyncStorage.setItem('userID', response.data.toString()).then((user) => {
    this.setState({ user });
});
// Send to next page
NavigationService.navigate('Main');

然后,在我的页面中,我尝试获取值:

...
render() {
    AsyncStorage.getItem('userID')
      .then((value) => {
        const data = JSON.parse(value);
        console.log('userID ', data.name);
      });
...

正在返回 'userID undefined'。为什么会这样?

谢谢

您编写的代码的问题在于 userId 具有值 10 但是当您调用 console.log 时,您将其视为具有属性 name。正确的代码如下所示:

...
render() {
    AsyncStorage.getItem('userID')
      .then((value) => {
        const userId = JSON.parse(value);
        console.log('userID ', userId);   // This line changed
      });
...