Я создаю приложение в ionic+angularfire2
и хочу загрузить несколько изображений в firebase storage
, но я хочу загрузить их все сразу или по крайней мере X
в то время (x > 1)
.
сейчас я загружаю их вот так
async imageUpload(name, file) {
// The storage path
const path = name;
// The main task
let img = 'data:image/jpg;base64,' + file;
return this.task = this.afStorage.ref('/').child(name).putString(img, 'data_url').then((snapshot) => {
console.log(snapshot)
}).catch((err) => {
console.log(err);
});
}
тогда я просто зациклился на массиве, который содержит файлы
let newDocId = this.afStore.createId();
for (var i = 0; i < this.lotProvider.uploadFoto.b64Image.length; i++) {
let name = 'feriaganadera/'+newDocId +'/'+ (+ new Date()) + "-image_foto_jpeg_" + i + ".jpeg";
this.imageUpload(name, this.lotProvider.uploadFoto.b64Image[i]);
}
это работает, файлы загружены, но он должен ждать, пока файл загрузит следующий.
Как я могу назвать функции асинхронными? поэтому imageUpload
не нужно ждать изображения.