用模型映射角度形式阵列



我有这个表单,我需要将模型映射到表单数组声明。

formGroup: FormGroup;
builder: FormBuilder

data :{
lineItems : [
{
qty: null,
item: null
}
]
}

this.formGroup = this.builder.group({
lineItems: this.builder.array([
{
item: [this.lineItems.item, Validators.required],
}
])
});

我对此表示怀疑"item:[this.data.lineItems.item,需要验证器]";domain.lineItems是一个数组,以及如何将其与每个formbuilder数组进行映射。

<div formArrayName="classmates">
<div *ngFor="let item of lineItems; trackBy: trackId; let i = index;">
<input
type="number"
class="form-control form-control-lg form-control-solid"
/>
</div>
</div>

您要搜索的是:

this.formGroup = this.builder.group({
lineItems: this.builder.array(
this.data.lineItems.map(line => {
return this.builder.group({item: [line.item, Validators.required]}
})
)
});

通过这种方式,您在formArray 中有一个formGroup

最新更新