- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 saveBlogPost()
函数需要执行以下操作:
uploadImages()
函数将 blogPost 的图像更新到 Firebase 存储。图片数量不固定。我的问题是如何等待不同数量的上传?
这是迄今为止我的代码:
<小时/>savePost() 函数:
function savePost() {
uploadImages();
}
uploadImages()函数:
注意: images
是要上传的图像文件的数组。
function uploadImages() {
images.forEach((image) => {
const uploadTask = storageRef.put(file,metadata);
uploadTask.on('state_changed',
function progress() {
//UPLOAD PROGRESS BAR
},
function error(err) {
//SET ERROR
},
function complete() {
//UPDATE IMAGE URL IN BLOGPOST OBJECT
//SET COMPLETE
}
});
}
问题:
我的目的是使 savePost()
函数 async
和 await
为 uploadImages()
函数。但是,只有在所有图像已解决/拒绝之后,我怎样才能解决/拒绝 uploadImages()
函数呢?
类似于:
async function savePost() {
const result = await uploadImages();
// ACT BASED ON RESULT
}
但我不知道如何使用 uploadImages()
函数,以便仅在所有图像完成后解决/拒绝。
我该怎么做?
最佳答案
function uploadImages() {
const promises = images.map(async image =>
new Promise((resolve, reject) => {
const uploadTask = storageRef.put(file, metadata);
uploadTask.on('state_changed',
function progress() {
//UPLOAD PROGRESS BAR
},
function error(err) {
//SET ERROR
reject(err);
},
function complete() {
//UPDATE IMAGE URL IN BLOGPOST OBJECT
//SET COMPLETE
resolve();
}
);
})
);
return Promise.all(promises);
}
关于Javascript异步如何等待不同数量的uploadTasks全部完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56492735/
我需要将 mp4 视频文件从 iPhone/iPad 上传到服务器,也在后台,所以我读到可以使用 URLSession.uploadTask(with: URLRequest, fromFile: U
我完全受困于 URLSession 和 uploadTask。实际上我只是想将一个 json 上传到 Web 服务器,并且在上传过程中应该显示一个简单的进度条。我实现了apple给出的方法:https
我正在使用这段代码。错误信息如下:错误:没有为类型“UploadTask”定义 getter“onComplete”。 (undefined_getter 在 [chatneu] lib/Screen
我要崩溃了 它说 *** 由于未捕获的异常“NSGenericException”而终止应用程序,原因:“后台 session 不支持完成处理程序 block 。改用委托(delegate)人。 va
我(几乎)成功地实现了 URLSessionDelegate、URLSessionTaskDelegate 和 URLSessionDataDelegate,这样我就可以在后台上传我的对象了。但是我不
这个问题已经有答案了: How do i get download URL once upload is done on firebase storage (2 个回答) 已关闭 4 年前。 我目前正
我想使用 URLSession 类的 uploadTask 方法将图像发送到服务器,我有以下上传图像的函数,但我无法读取 php 文件中的任何内容。 @IBAction func uploadImag
我正在尝试获取 Firebase 上传的进度,但我试图用来监视状态的函数显然是在错误的对象类型上调用的: Uncaught TypeError: uploadTask.on is not a func
我正在使用 Angular2 和 Firbase 存储。我试图获取“uploadProgress”值来更新(在 HTML 文件中指定),但不知何故,uploadTask.on 函数中的“uploadP
这是我的两个例子: let config = NSURLSessionConfiguration.defaultSessionConfiguration() config.HTTPAd
我正在使用一个 API,该 API 接受使用多部分表单数据上传的视频。我想使用 NSURLSession.uploadTask (加上它的委托(delegate))来处理上传。 我的问题是我需要更改本
我正在使用 firebase 并注意到大多数方法都返回 promise ,但在文档中这个不是。是否可以将其更改为 promise ? uploadTask.on( 'state_changed
我正在尝试解决如何使用 swift 将一组参数和图像文件上传到我的 API。 我的代码大致在这一点上: //parameters let actualParameters = ["email"
我想添加一个进度条以准确了解我的视频上传的百分比,但无法调用 didCompleteWithError、didReceive 响应、didSendBodyData bytesSent:Int64、to
我正在开发一个使用 NSURLSession 上传多个文件的应用程序,现在我的文件已成功上传。但现在我想要实现的是暂停、恢复和取消上传,就像我们在下载任务中所做的那样。可能吗。?任何帮助,将不胜感激。
我试图上传到存储的图像是成功的,但是当我想使用上传的图像将 URL 存储到数据库中时,由于某种原因它返回 null。 Future _uploadPic(String docRef, File fil
我无法从暂停状态恢复 UploadTask。如果我在不尝试暂停上传的情况下让它完成,我就能够成功上传视频。根据Firebase Storage Android Documentation您可以使用 r
这个问题已经有答案了: How to get the download url from Firebase Storage? (1 个回答) 已关闭 3 年前。 如何获取下载URI? String d
当应用程序处于后台时,我在使用 NSURLSession UploadTask 上传视频文件时遇到 CFNetwork SSL 握手错误。当应用程序处于前台时,上传视频没有问题。仅当应用程序处于后台时
我想使用特定的 URL 端点将图像文件上传到后端服务器。我可以使用 Alamofire 的上传请求作为 multipartFormData 轻松做到这一点。不过我想摆脱 Alamofire 以尽量减少
我是一名优秀的程序员,十分优秀!