У меня сложная вложенная групповая форма:
this.form = this.formBuilder.group({
'type': new FormControl(),
'formGroup1': this.formBuilder.group({'date': new FormControl()}),
'formGroup2': this.formBuilder.group({'types': new FormArray([])}),
});
Я хочу, чтобы форма отображалась в зависимости от значения this.form.get("type").value
. Если значение равно 1
, показывать только formGroup1
, если 2
, то formGroup2
.
<form [formGroup]="form" class="dialog_form" autocomplete="off">
<input type="text" formControlName="type">
<!-- Subforms here
</form>
Как это сделать?
-1
user14316755
22 Сен 2020 в 00:06
1 ответ
Лучший ответ
Вам нужно сделать как
<form [formGroup]="form" class="dialog_form" autocomplete="off">
<input type="text" formControlName="type">
<form *ngIf="form.get('type').value === 1; else f2" formGroupName="formGroup1">
...
</form>
<ng-template #f2>
<form formGroupName="formGroup2">
...
</form>
</ng-template>
</form>
Надеюсь полезно
1
yash
21 Сен 2020 в 21:18
Похожие вопросы
Новые вопросы
angular
Вопросы об Angular (не путать с AngularJS), веб-фреймворке от Google. Используйте этот тег для вопросов Angular, которые не относятся к отдельной версии. Для более старой веб-инфраструктуры AngularJS (1.x) используйте тег AngularJS.