1
に別のフォームの配列であるフォームの配列に追加します()メソッドが機能しません。 sortItemの正しい反復のフォームコントロールにアクセスし、その反復に複数の場所アイテムを追加するにはどうすればよいですか?は動的に私は以下のコンポーネントクラスのコードを持っているangular2
これは私のマークアップです:
<div class="">
<a (click)="addSort()" style="cursor: default">
Add Sort Locations +
</a>
</div>
<div formArrayName="sortItem">
<div *ngFor="let sortLocation of form.controls.sortItem.controls; let i=index">
<!-- address header, show remove button when more than one address available -->
<div>
<span>Location {{i + 1}}</span>
<span *ngIf="form.controls.sortItem.controls.length > 1"
(click)="removeAddress(i)">
</span>
</div>
<div [formGroupName]="i">
<!--name-->
<div>
<label>Location Name</label>
<input type="text" formControlName="locationName">
<!--display error message if street is not valid-->
<small [hidden]="form.controls.sortItem.controls[i].controls.locationName.valid">
Street is required
</small>
</div>
<div formArrayName="locationItems">
<div *ngFor="let eachItem of form.controls.sortItem.controls[i].controls.locationItems.controls; let t=index">
<!-- address header, show remove button when more than one address available -->
<div class="">
<a (click)="addSortLocationItem(i,t)" style="cursor: default">
Add Items +
</a>
</div>
<div>
<span>Location Item {{t + 1}}</span>
<span *ngIf="form.controls.sortItem.controls[i].controls.locationItems.controls[t].length > 1"
(click)="removeAddress(t)">
</span>
</div>
<div [formGroupName]="t">
<!--name---->
<div>
<label>Item Name</label>
<input type="text" formControlName="itemName">
<!--display error message if street is not valid-->
<small [hidden]="form.controls.sortItem.controls[i].controls.locationItems.controls[t].controls.itemName.valid">
Name is required
</small>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
これですべてのヘルプは大歓迎されます。
あなたは天才です!おかげで、私は夢中になった。計画どおりに動作し、html部分の略語のおかげです。 – user875139
私はフォーム配列に関しても同様の質問がありますが、今回はファイル入力に関する質問があります。あなたがここを見て助けてもらえますか? http://stackoverflow.com/questions/41907471/update-a-formcontrol-that-is-a-file-input-in-a-formarray-in-angular2 – user875139