【发布时间】:2019-10-17 13:30:04
【问题描述】:
将数据数组映射到复选框表单数组的正确方法是什么? 我尝试了下面的代码,但它不起作用...目标是从 httpclient 获取信息并将其映射到可以的数据数组,但无法正确映射数据数组以形成数组...
data = [
{ id: false, name: "Ovo" },
{ id: false, name: "Ono" },
{ id: false, name: "Levo" },
{ id: false, name: "Desno" }
];
this.postForm = this.fb.group({
osnovne: this.fb.group({
sekcija: ["market", Validators.required],
kategorija: "",
cena: [""],
dogovor: false,
opis: ""
}),
detaljne: this.fb.group({
select: this.fb.array([]),
checkboxes: this.fb.array([])
}),
imagePath: this.fb.group({
data: ""
})
});
模板
<form [formGroup]="postForm">
<div formGroupName="detaljne">
<div
formArrayName="checkboxes"
*ngFor="let data of data; let i = index"
>
<input [id]="data.id" type="checkbox" [formControl]="checkboxes[i]" />
<label [for]="data.id">
{{ data.name }}</label
>
</div>
</div>
</form>
【问题讨论】:
标签: angular angular-forms formarray