У меня есть такая динамическая группа FormGroup (номер раздела и размер цикла - это динамика).Это моя группа форм $ form:
{
"action.281": {
"section.267": {
"loop.1": {
"form.885": []
},
"loop.2": {
"form.885": []
}
},
"section.275": {
"loop.1": {
"form.891": ""
}
},
"section.276": {
"loop.1": {
"section.277": {
"loop.1": {
"form.894": ""
}
},
"default": {
"form.892": "",
"form.893": ""
}
}
"loop.2": {
"section.277": {
"loop.1": {
"form.894": ""
}
},
"default": {
"form.892": "",
"form.893": ""
}
}
}
}
}
Здесь я использую «default», когда раздел зависит от другого раздела для формы, только что связанной с родительским разделом.Например, здесь раздел 277 относится к разделу 276, но раздел.276 имеет 2 FormGroupName 892 и 893, так что для управления всеми я помещаю их в «FormGroup» по умолчанию.
Я пытаюсь использовать его в шаблоне веточки, но у меня возникают некоторые проблемы.На самом деле я не знаю, как управлять FormGroupName динамически.
Вот мой основной шаблон.
<div [formGroup]="form">
<div *ngFor="let section of sections">
<app-section [section]="section" [action]="action"></app-section>
</div>
</div>
Вот мой шаблон раздела.
<div [formGroup]="form">
<div [formGroupName]="'action.281'">
<div *ngFor="let loop of section.loops" [formGroupName]="'loop.' + loop.id">
<div *ngFor="let question of loop.questions" class="form-group">
<label>{{ question.label }}</label>
<input class="form-control" [formControlName]="'form.' + question.id"/>
</div>
<div *ngFor="let s of section.sections">
<app-section [section]="s" [action]="action"></app-section>
</div>
</div>
</div>
</div>
Проблема в том,этот раздел может в зависимости от другого раздела (в форме, раздел 277 в зависимости от раздела 276).Я блокирую в архитектуре шаблона ... Как управлять динамическими разделами на разделы?