异步存储数据加载时间

Async storage data load time

我正在使用 Asyncstorage 来存储用户数据,例如:

try {
      await AsyncStorage.setItem(prod_id, '1').then(()=>{
        alert('Added to Cart');
      });
    } catch (error) {
      console.log(error);
    }

但是当我将它添加到 onPress 操作时,保存数据需要很长时间,然后我的警报被调用。难道我做错了什么?我需要帮助!

我认为您正在混合两种处理 JS 中的承诺的方式。

  1. 使用异步等待
async function SetItem(){
  try {
    await AsyncStorage.setItem(prod_id, '1')
    alert('Added to Cart');
  } catch (error) {
    console.log(error);
  }
}
  1. 随即赶上
function SetItem(){
  return AsyncStorage.setItem(prod_id, '1')
  .then(()=>{
    alert('Added to Cart');
  }).catch((error)=> {
    console.log(error)
  })
}

调用此方法

this.SetItem().then(()=>{
 console.log("value is set");
})