Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 异步存储数据加载时间_React Native_Asyncstorage - Fatal编程技术网

React native 异步存储数据加载时间

React native 异步存储数据加载时间,react-native,asyncstorage,React Native,Asyncstorage,我使用Asyncstorage存储用户数据,如: try { await AsyncStorage.setItem(prod_id, '1').then(()=>{ alert('Added to Cart'); }); } catch (error) { console.log(error); } 但当我将其添加到onPress操作时,保存数据需要很长时间,然后调用我的警报。我做错什么了吗?求你了,我需要帮助 我认为你

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

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

但当我将其添加到onPress操作时,保存数据需要很长时间,然后调用我的警报。我做错什么了吗?求你了,我需要帮助

我认为你在混合两种方式来处理JS中的承诺

使用异步等待 然后再抓 调用此方法

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

Asyncstorage.setItem是一个异步函数,因此首先,它将存储数据,然后返回一个承诺。在promise解决之前,函数将等待。这取决于您所说的需要很长时间,异步存储不是很快。这是正常的,有一定的延迟。当我的应用程序加载时,我正在获取计数的密钥长度。但是10次中有4次加载数据需要5-8分钟,直到那时我只能看到数据。
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");
})