【发布时间】:2022-01-27 22:59:49
【问题描述】:
我想通过附加在 ImageUrls 状态上的 getDownloadURL 来获取 url 返回,getDownloadURL 需要一两秒来返回 url,并且似乎代码继续运行并且不等待它返回 url
我正在尝试上传多张图片,然后在 Firestore 中创建一个包含图片网址和描述的对象
const createAlbum = () => {
addDoc(albumCollection, {
name: albumName,
category: category,
images: imageUrls,
description: description,
});
};
const HandleUpload = (files) => {
files.forEach((file) => {
const storageRef = ref(
storage,
`/files/albums/${albumName}/${file.name}`
);
const uploadTask = uploadBytesResumable(storageRef, file);
uploadTask.on(
"state_changed",
(snap) => {},
(err) => {},
() => {
getDownloadURL(uploadTask.snapshot.ref).then((url) => {
setImageUrls((prev) => [...prev, url]);
});
}
);
});
createAlbum();
};
【问题讨论】:
标签: reactjs firebase firebase-storage