В настоящее время я сталкиваюсь с проблемой, когда шаблон не привязывается к элементам управления формы, которые разделяют имя, удаляя условную логику для проверок работоспособности.
Что я пробовал: проверка орфографии, различные вызовы конструктора FormControl, удаление условной логики для проверок работоспособности.
Файл TypeScript:
@Input() repairForm: FormGroup;
.
.
.
ngOnInit() {
this.isAuthorized = this.authService.isAuthorized;
if(this.isAuthorized){
this.repairForm.addControl('customerNumber', new FormControl('',))
this.repairForm.addControl('originDate', new FormControl('',))
this.repairForm.addControl('originTime', new FormControl('',))
this.repairForm.addControl('originCity', new FormControl('Value Here',))
this.repairForm.addControl('originState', new FormControl('',))
}
// other form code goes here
}
Файл шаблона:
<form [formGroup]="repairForm">
.
.
.
<div *ngIf="isAuthorized ">
<div class="form-row">
<mat-form-field>
<input matInput formContolName="customerNumber" placeholder="Customer Number">
</mat-form-field>
</div>
<div class="form-row">
<mat-form-field>
<input matInput formContolName="originCity" placeholder="Origin City">
</mat-form-field>
<mat-form-field>
<input matInput formContolName="originState" placeholder="Origin State">
</mat-form-field>
</div>
<div class="form-row">
<mat-form-field >
<input matInput [matDatepicker]="picker" formContolName="originDate" placeholder="Origin Date" (dateChange)="logEvent()">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field>
<mat-form-field>
<input matInput formContolName="originTime" placeholder="Origin Time">
</mat-form-field>
</div>
</div>
.
.
.
</form>
При загрузке формы вход, связанный с originCity, не отображает «Value Here». Изменения во входных данных не изменяют formControls, с которыми они должны быть связаны. Кроме того, событие журнала из события datepicker dateChange регистрирует состояние формы восстановления. После изменения любого из этих полей форма будет нетронутой и нетронутой. Наконец, есть другие поля, созданные при похожих обстоятельствах, которые работают.