В Angular 8 у меня есть группа форм, в которой я хочу повторно инициализировать форму с новыми значениями. Но когда я делаю fb.build
во второй раз, значения отображаются неправильно.
Флажок становится неотмеченным, хотя он должен быть отмечен, а поле ввода показывает [object Object]
<form [formGroup]="myform" novalidate autocomplete="off">
<mat-checkbox
formControlName="dndcheckbox"
[(ngModel)]="userdetails.DoNotDisturb"
></mat-checkbox>
<mat-form-field>
<input matInput type="text" formControlName="fwdNumber" [(ngModel)]="userdetails.ForwardNumber" />
</mat-form-field>
</form>
userdetails: MyObject;
myform: FormGroup;
constructor(private fb: FormBuilder,) {}
ngOnInit() {
this.myService.refreshDataSubject.subscribe((data) => {
this.userdetails = data;
this.initializeForm();
});
}
initializeForm() {
this.myform = this.fb.group({
dndcheckbox: ['', ''],
fwdNumber: [
{
value: this.userdetails.ForwardNumber,
},
control => validateTelephoneNumber(this.userdetails.ForwardNumber),
],
});
}
Что может пойти не так?