如何在Angular中使用多个ViewChild元素(2/4)

时间:2017-09-13 06:03:48

标签: angular file-upload angular2-forms

我已按照https://devblog.dymel.pl/2016/09/02/upload-file-image-angular2-aspnetcore/上传单个文件并且工作正常。

现在我想根据数组documentTypes[]中的元素数来上传动态的文件数。

我的HTML:

<div *ngFor="let item of documentTypes ;let i=index">
    <input #fileInput[i] type="file" #select name="document[{{i}}]"  />
</div>

我的TS:

 @ViewChild("fileInput") fileInput: any[];

提交功能:

onSubmit = function (docs) {
   for (var i = 0; i < this.documentTypes.length; i++) {
      let fi = this.fileInput[i].nativeElement;
       //This  is not working. Here fileInput is undefined
   }
}

任何建议都将受到赞赏。

1 个答案:

答案 0 :(得分:1)

@ViewChild装饰者只适合一个孩子。要获得一系列孩子,您需要使用@ViewChildren