gpt4 book ai didi

firebase - 将所有数据从 Firebase 存储放入异步函数 React Native 中的数组

转载 作者:行者123 更新时间:2023-12-04 10:07:58 27 4
gpt4 key购买 nike

我正在尝试获取 firebase 存储中的所有图像。到目前为止它有效。但问题是如何将所有数据放入异步函数中的数组中,而不仅仅是一个然后将其传递到状态?

我的代码:

   async componentDidMount(){
auth().signInAnonymously();

var arr = [];
var storageRef = storage().ref("/madu_mubarak/");
await storageRef.listAll().then((result)=> {
result.items.forEach((imageItem) =>{
this.displayItem(imageItem)
});
}).catch(function(error) {
console.warn("error "+error);
});


}

async displayItem(imageItem){
var arr = [];
imageItem.getDownloadURL().
then((url) => {
console.warn("ur "+url)
arr.push(url);
this.setState({
isLoad: false,
urlImage: arr
})
}).catch((error) =>{
console.warn("error "+error);
});


// return await Promise.all(arr);
}

请帮忙。
谢谢

最佳答案

主要要点是这个


async componentDidMount(){
auth().signInAnonymously();


var storageRef = storage().ref("/madu_mubarak/");
await storageRef.listAll().then((result)=> {
let promises = result.items.map((imageItem) =>{
return imageItem.getDownloadURL()
});
Promise.all(promises).then(urls => this.setState({images: urls})

}

您想创建一个从 getDownloadUrl 返回的 promise 数组,并等待所有这些 promise 都用 Primise.all 解决
然后您可以将结果分配给状态

关于firebase - 将所有数据从 Firebase 存储放入异步函数 React Native 中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61472810/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com