Как перебрать массив значений группы? - PullRequest
0 голосов
/ 25 февраля 2019

Я объявил следующую группу форм.

     this.secondFormGroup = this._formBuilder.group({

  nested: this._formBuilder.group({
    arr1: [],
    arr2: [],
    arr3: [],
    arr4: []

  }),
 })

Как только пользователь заполняет форму, я хочу перебрать массивы в группе форм.Но я получаю ошибку, что foreach не является функцией.что я делаю не так?

Это то, что я пытался.

var arrays =this.secondFormGroup.get('nested').value
arrays.forEach(x=>{
  if(x.arr1.length){
    x.arr1.forEach(x=>{
    console.log(arr1
    }) 
  }

Ответы [ 2 ]

0 голосов
/ 25 февраля 2019

nested это группа.Вам нужно получить ключи nested и повторить это.

После первой строки сделайте что-то вроде этого:

Object.keys(arrays).forEach(key => {
      arrays[key].forEach(x => {
         console.log(x);
      });
});
0 голосов
/ 25 февраля 2019

Вы получите объект с arr1, arr2 ... в качестве свойств.Используйте Object.keys(arrays) для просмотра свойств этого объекта.

Object.keys(arrays).forEach(key => {
  if(arrays[key].length) {
    arrays[key].forEach(value => console.log(value));
  }
});
...