У меня есть массив строк emails, как показано ниже:
{
"streetName": "street 1",
"emails" : [
"[email protected]",
"[email protected]"
]
}
Как бы я отобразил это в полях ввода реактивной формы?
Я пробовал это, но не работал:
<div class = "row mt-4" formArrayName = "emails">
<div class = "col" *ngFor = "let email in myform.get('emails')['controls']; let emailIndex=index">
<input type = "text" placeholder = "" formControlName = "emailIndex"/>
</div>
</div>





*ngFor. Вы должны использовать директиву of for [ngForOf]. И передайте emailIndex с атрибутом [formControlName].<div
class = "col"
*ngFor = "
let email of myform.get('emails')['controls'];
let emailIndex = index
"
>
<input type = "text" placeholder = "" [formControlName] = "emailIndex" />
</div>
data.emails и добавить FormControl к emailsFormArray.for (let index in this.data.emails) {
(this.myform.controls.emails as FormArray).controls.push(
new FormControl(this.data.emails[index])
);
}
Какая часть отображает [object Object]? Можете ли вы создать демо в StackBlitz? Спасибо.
Я иду к проблеме, я добавляю FormGroup вместо FormControl, ваш код правильный
для меня это рендеринг как
[object Object]