AsyncStorage.getItem() 似乎不起作用

AsyncStorage.getItem() doesn't seem to work

当我尝试通过 AsyncStorage.getItem() 设置一个值时,我无法请求返回它。

let tokenData = null;
const getData = async () => {
  let token;
  try {
    token = await AsyncStorage.getItem('token');
    tokenData = JSON.parse(token);
  } catch (e) {
    // error reading value
  }
};

我设置了如下项目

const setLoginLocal = async loginData => {
  try {
    let token = loginData.headers.authorization;
    let headerToken = ['token', JSON.stringify(token)];
    let user = ['user', JSON.stringify(loginData.data)];
    await AsyncStorage.setItem([user, headerToken]);
  } catch (err) {
    console.log(err);
  }
};

如果你想存储数据,你必须像这样设置项目:

  const storeData = async (key, value) => {
    try {
      await AsyncStorage.setItem(key, value);
    } catch (error) {
      console.log(error);
    }
  };

然后您可以像这样使用 getItem 检索它:

  const getData = async key => {
    try {
      const data = await AsyncStorage.getItem(key);
      if (data !== null) {
        console.log(data);
        return data;
      }
    } catch (error) {
      console.log(error);
    }
  };
const setLoginLocal = async loginData => {
  try {
    let token = loginData.headers.authorization;
    let headerToken = ['token', JSON.stringify(token)];
    let user = ['user', JSON.stringify(loginData.data)];
    await AsyncStorage.setItem([user, headerToken]);
  } catch (err) {
    console.log(err);
  }
};