异步存储数据加载时间

问题描述 投票:0回答:1

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

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

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

react-native asyncstorage
1个回答
1
投票

我认为你正在混合使用两种处理JS中的承诺的方法。

  1. 使用Async等待
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");
})
© www.soinside.com 2019 - 2024. All rights reserved.