问题出现原因很可能是异步操作不在预期时间内完成,导致数据未被正确读取。可以使用Promise来确保数据被正确读取。示例如下:
// 读取数据 const getData = async () => { try { const value = await AsyncStorage.getItem('@key') if(value !== null) { // 处理数据 } } catch(e) { // 错误处理 } }
// 存储数据 const storeData = async () => { try { await AsyncStorage.setItem('@key', value) // 存储成功后获取数据 getData() } catch(e) { // 错误处理 } }
在存储数据之后,使用Promise确保数据被正确读取,可防止在操作未完成前继续执行代码。