Я использую файл-upload.component.ts, который отлично работает при использовании в другом компоненте в качестве дочернего компонента, но при использовании в диалоге (как дочерний) он не работает должным образом.
startUpload(event: FileList) {
const file = event.item(0);
const ref = this.storage.ref(this.imagePath);
this.task = this.storage.upload(this.imagePath, file);
// snapshotChanges() doesn't complete in Angular material dialog.
this.snapshot = this.task.snapshotChanges().pipe(
finalize(async () => {
this.downloadURL = await ref.getDownloadURL().toPromise();
})
);
}
Файл загружается в Firebase Storage, но snapshotChanges () не запускается, и я не получаю downloadURL.