В настоящее время у меня есть функция в моем угловом компоненте, которая запускается всякий раз, когда я хочу загрузить список файлов.
Я хочу проследить за процессом загрузки, чтобы затем очистить список файлов иотслеживать ход загрузки для индикатора выполнения.
Моя текущая проблема заключается в том, что когда я запрашиваю значение uploadProgress
, он повторно запускает this.pictureService.upload(this.selectedFiles)
и загружает файлы дважды.
Myфункция в настоящее время выглядит так:
uploadImages() {
// Upload picture and save progress to observable
const uploadProgress: Observable<HttpEvent<HttpUploadProgressEvent>> = this.pictureService.upload(this.selectedFiles);
// Create snackbar with observable for progress bar
this.snackBar.openFromComponent(UploadProgressComponent, {
data: { uploadProgress },
});
// Wait for uploading to be finished and then clear selected files and preview URLs
uploadProgress.subscribe((event: HttpUploadProgressEvent) => {
if (event.loaded === event.total && event.loaded !== undefined) {
this.selectedFiles = null;
this.previewUrls = [];
}
});
}