Angular: обещание http-звонка не ждет - PullRequest
0 голосов
/ 01 июля 2018

Я пытаюсь загрузить некоторые файлы, используя http-вызов. я перебираю список файлов в функции uploadFiles и загрузите каждый файл, вызвав filesUpLoader функция. Моя проблема в том, что функция filesUpLoader не ждет, пока сделано, несмотря на обещание, и я использовал await ключевое слово.

на скриншоте ниже я загружаю два файла и результат, как вы можете видеть HTTP-вызов не ждет. Большое вам спасибо

enter image description here

Это мой код

 this.uploadFiles(files);

 uploadFiles(files:FileList)
 {

 Array.from(files).forEach(  async file => {

 await this.filesUpLoader(file);

 setTimeout(()=>{ console.log("This Delay") }, 4000);
 });

 }

 filesUpLoader(file:File)
 {
  const url = "website.com";
  const formData: FormData = new FormData();
  formData.append('MediaFile', file, file.name);
  this.http.post(url, formData).toPromise().then(data=>
      {
        console.log("This HTTP Call");
      },
      error=> 
      {
      console.log(error.error.Message);
      });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...