Я использую Formbuilder для создания FormGroup:
myForm = this.fb.group(
{
title: [""],
fixed_grade1: [""],
fixed_value1: [""],
fixed_grade2: [""],
fixed_value2: [""],
fixed_grade3: [""],
fixed_value3: [""],
fixed_grade4: [""],
fixed_value4: [""]
});
все fixed_grade
и fixed_value
являются входами и раскрывающимися списками.
У меня их 4 пары, и это работает правильно.
Но теперь я хотел бы сгруппировать их, чтобы мне не приходилось обращаться к каждому значению в моем контроллере одно за другим, с myForm.get("fixed_grade1").value
для каждого.
Но я бы хотел, чтобы все эти значения были сгруппированы в массив, например:
myArray: [{grade, value}, [grade, value}...]
поэтому я могу получить доступ к их значению: myArray[0].grade
Вместо того, чтобы отображать каждое отдельное значение в новый массив, я увидел FormArray
в FormBuilder
, я просто не могу реализовать его корректность.
Каким будет правильный синтаксис для достижения того, что я описал, имея ровно 4 пары оценок / оценок, а также важно, чтобы в моем окончательном массиве со всеми этими парами оценка / оценка у меня были только значения, которые не являются неопределенными, поэтому, если в моей форме пользователь заполняет только одну пару оценок / баллов, тогда мой myArray.length
будет равен 1.