Если флажок установлен, то текстовая область появляется и требуется [обязательно] = "otherVendorsChecked == true? True: false"
Если я установил флажок и затем снял флажок, ввод текста еще требуется.
Кто-нибудь знает, что я делаю не так?
<div>
<mat-checkbox [ngModelOptions]="{standalone: true}" [(ngModel)]="otherVendorsChecked">Other option:</mat-checkbox>
</div>
<mat-form-field *ngIf="otherVendorsChecked == true">
<textarea matInput formControlName="otherVendors" [required]="otherVendorsChecked == true ? true : false"></textarea>
</mat-form-field>
[EDIT]
Если я удаляю * ngIf = "otherVendorsChecked == true" , это работает нормально.
Я предполагаю, что mat-form-field удаляется только с условием ngIf и, следовательно, больше не влияет на требуемое свойство.
Это моя форма в ngOnInit:
this.form = new FormGroup({
otherVendors: new FormControl('', [Validators.minLength(2)]),
...
});
this.fillForm();
и в моей fillForm у меня есть этот код:
this.form.controls['otherVendors'].setValue(this.lastFacilityDetailOfCalendarEvent.otherVendors);
if(this.lastFacilityDetailOfCalendarEvent.otherVendors != null && this.lastFacilityDetailOfCalendarEvent.otherVendors.length > 0) {
this.otherVendorsChecked = true;
}