Все,
Мне очень трудно заставить FormArray работать с моим текущим приложением.Я пытаюсь получить имена из службы и добавить их в форму бронирования (и дать пользователю возможность добавлять / удалять / изменять имена)
Вот соответствующий код:
reservationForm: FormGroup;
attendeeArray: FormArray;
constructor(
private groupMeetingService: GroupMeetingsService,
private formBuilder: FormBuilder
) {}
ngOnInit() {
this.initialize();
}
private createAttendeeName(name: string): FormControl {
return this.formBuilder.control({
name: name
});
}
private initialize(): void {
this.attendeeArray = this.formBuilder.array([]);
this.reservationForm = this.formBuilder.group({
attendeeRadio: ['inPerson'],
attendeeName: this.attendeeArray,
});
this.groupMeetingService.getMeeting(this.meeting.id).subscribe(meeting =>
{
this.meetingLocation = meeting.location;
});
this.groupMeetingService
.getReservations(this.meeting.id)
.subscribe(data => {
this.reservations = data;
this.attendeeArray = this.getAttendeeNames();
data.attendees.forEach(attendee => {
this.attendeeArray.push(this.createAttendeeName(attendee.name));
});
console.log('array', this.reservationForm);
});
}
Когда я смотрю на консоль, она показывает, что она добавляется.Является ли приведенный выше код правильным?
И если он верен, как я могу просмотреть его в HTML и отобразить?
Я перепробовал несколько вещей, но не повезло: - (
<div class="reservation-container" [formGroup]="reservationForm">
<div formArraryName="attendeeArray" *ngFor="let attendee of reservationForm.controls['attendeeName'].controls; let i = index">
<input [formControlName]="i" value="{{ attendee.name }}">
</div>
</div>
Thx jonpfl