Группа форм не имеет имени angular

Я хочу перебрать свои группы форм, а затем определить, какие из них действительны, а затем добавить недопустимые из групп в новый массив. Однако у меня возникают проблемы с получением значения имени для каждой группы форм.

 this.applicationFormArray = new FormGroup({   
        selectAppFormGroup:this.selectAppFormGroup = new FormGroup({
        }),
        generalAppFormGroup:this.generalAppFormGroup = new FormGroup({
        }),
        fileModeFormGroup:this.fileModeFormGroup = new FormGroup({
        }),
        accessListFormGroup:this.accessListFormGroup = new FormGroup({
        })
    });

    this.applicationFormGroup.addControl('applicationFormArray', this.applicationFormArray);

checkValidity() {
        for (let c of Object.getOwnPropertyNames(this.applicationFormArray.controls)) {
            if(!this.applicationFormArray.controls[c].valid) {
                var invalidFormGroups = new Array;
                var grabFormGroups = console.log(this.applicationFormArray.controls[c].get('?????'));
                invalidFormGroups.push(grabFormGroups);
            }
        } 
    }

введите здесь описание изображения


person ashley g    schedule 06.03.2018    source источник


Ответы (1)


Группа корневой формы не имеет названия. Оберните их в другую «корневую» группу форм, чтобы дать им имена.

person Ilia Volk    schedule 06.03.2018
comment
Я пробовал это, но группы форм по-прежнему выходят без имени при просмотре через них. Обновлено выше - person ashley g; 06.03.2018
comment
Вы можете получить доступ к имени от родителя, используя циклы: g: FormGroup; Object.entries(g.parent.controls).find(([,v]) => v === g)[0] - person Ilia Volk; 06.03.2018
comment
это позволило бы мне получить доступ к именам в родительской группе форм, однако всегда будет отображаться вся коллекция. Я хочу выбрать только допустимые группы форм. - person ashley g; 07.03.2018