Angular:Promise http调用不等待

时间:2018-07-01 13:21:57

标签: angular angular6

我正在尝试使用http调用上传一些文件。我遍历文件列表  uploadFiles函数中,并通过调用filesUpLoader上传每个文件  功能。我的问题是函数filesUpLoader不会等到  尽管它是Promise,但还是使用了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);
      });
}

0 个答案:

没有答案