Javascript 如何从firebase存储中提取图像列表?
我已成功地将一些照片上载到firebase,但我想在某个位置下载所有图像 目前,我必须执行以下难看的代码:Javascript 如何从firebase存储中提取图像列表?,javascript,reactjs,firebase,firebase-storage,Javascript,Reactjs,Firebase,Firebase Storage,我已成功地将一些照片上载到firebase,但我想在某个位置下载所有图像 目前,我必须执行以下难看的代码: const getPhotos = async () => { var storage = firebaseApp.storage() var gsReference = storage.refFromURL('gs://my-app.appspot.com/') for (let i = 1; i < 4; i++) { await g
const getPhotos = async () => {
var storage = firebaseApp.storage()
var gsReference = storage.refFromURL('gs://my-app.appspot.com/')
for (let i = 1; i < 4; i++) {
await gsReference
.child(`${user.id}/${name}/photo${i}.jpg`)
.getDownloadURL()
.then((url) => {
fetch(url).then((res) => {
setPhotos((photos) => photos.concat(res.url))
})
})
.catch((error) => {
console.log('ERROR!', error)
})
}
}
const getPhotos=async()=>{
var storage=firebaseApp.storage()
var gsReference=storage.refFromURL('gs://my-app.appspot.com/'))
for(设i=1;i<4;i++){
等待参考
.child(`${user.id}/${name}/photo${i}.jpg`)
.getDownloadURL()
。然后((url)=>{
获取(url)。然后((res)=>{
setPhotos((photos)=>photos.concat(res.url))
})
})
.catch((错误)=>{
console.log('ERROR!',ERROR)
})
}
}
这依赖于所有被称为photo1.jpg
,photo2.jpg
等的照片
有没有一种方法可以将它们全部拉出来,而不管它们被称为什么?显然有一个函数
const getPhotos=async()=>{
const storage=firebaseApp.storage();
让reference=storage.refFromURL('gs://my-app.appspot.com/');
reference=reference.child(`${user.id}/${name}`);
const{items}=await reference.listAll();
const urlPromissions=items.map(pr=>pr.getDownloadURL()
。然后(url=>fetch(url))
.catch(error=>error));
让URL=等待承诺。全部(URL承诺);
URL=URL.filter(结果=>!(错误的结果实例));
设置照片(网址);
}
嘿,Jozef,谢谢你的回答,太好了。不知道你能不能帮我回答这个问题。不知道如何获得每一个参考,这样我就可以删除图像