【发布时间】:2021-07-26 06:39:51
【问题描述】:
我正在尝试通过使用 setItem() 将令牌保存到 AsyncStorage 来在我的项目中使用 AsyncStorage
使用令牌响应的操作
import axios from 'axios';
import {URL, Config} from '../../service/Api';
import AsyncStorage from '@react-native-async-storage/async-storage';
export const checkSmsToLoginUser = value => async dispatch => {
dispatch({type: 'USER_LOGIN_REQUEST'});
try {
const {data} = await axios.post(`${URL}user/checkSMSCode`, value, Config);
console.log(data.token); // it consoles the token
await AsyncStorage.setItem('USER_TOKEN', data.token);
dispatch({type: 'USER_LOGIN_SUCCESS', payload: data?.token});
} catch (error) {
dispatch({type: 'USER_LOGIN_ERROR', payload: error});
}
};
然后我在组件中调度操作,然后尝试使用 getItem 从 AsyncStorage 获取令牌
const getData = async () => {
try {
const token = await AsyncStorage.getItem('USER_TOKEN');
return token, JSON.parse(token);
} catch (error) {
return error;
}
};
console.log(getData(), 'token From AsyncStorage');
但是当我控制台来自 AsyncStorage 的令牌时,我有某种未处理的承诺
任何线索是什么问题或解决方案?
【问题讨论】:
标签: react-native react-native-android react-native-ios asyncstorage