Angular 链服务可观测呼叫 我有一个要上传的文件列表 我想做的事情只有当所有的文件上传成功 onUpload(事件){ let files:File[]=事件; files.forEach(文件=>{ const formData=new formData(); formData.append('file',file); formData.append('dsId',this.rdd.tech_id); this.rddService.upload(formData.subscribe)(响应=>{ //做点什么 }) }) }

Angular 链服务可观测呼叫 我有一个要上传的文件列表 我想做的事情只有当所有的文件上传成功 onUpload(事件){ let files:File[]=事件; files.forEach(文件=>{ const formData=new formData(); formData.append('file',file); formData.append('dsId',this.rdd.tech_id); this.rddService.upload(formData.subscribe)(响应=>{ //做点什么 }) }) },angular,rxjs,observable,Angular,Rxjs,Observable,有办法吗 试试forkJoin import { forkJoin } from 'rxjs'; onUpload(event) { let files: File[] = event; forkJoin( // spread the array of requests // in the map we do the appropriate modifications as well ...files.map(file => {

有办法吗

试试
forkJoin

import { forkJoin } from 'rxjs';

onUpload(event) {
    let files: File[] = event;
    forkJoin(
      // spread the array of requests
     // in the map we do the appropriate modifications as well
      ...files.map(file => {
          const formData = new FormData();
          formData.append('file', file);
          formData.append('dsId', this.rdd.tech_id);
          return this.rddService.upload(formData)
      })
    ).subscribe(data => {
     console.log('All done', data);
   });
  }