Как перебрать свойство массива элементов управления из форм в Angular - PullRequest
0 голосов
/ 01 февраля 2019

У меня есть следующая проблема, мне нужно перебрать свойство элементов управления Form в Angular, используя цикл forEach.Я пишу следующий код:

const arr = this.bankForm.controls;
arr.forEach((element: {[key: string]: AbstractControl}) => {

});

И у меня следующая ошибка:

enter image description here

1 Ответ

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

Вот один способ перебора элементов управления

Решение

Object.keys(this.bankForm.controls).forEach((control: string) => {
    const typedControl: AbstractControl = this.bankForm.controls[control];
    console.log(typedControl) 
    // should log the form controls value and be typed correctly
});

Это потому, что Object.keys(); возвращает массив значений ключазатем вы можете выполнить итерацию, используя метод массива forEach();.

Документация

forEach () метод ./ Метод Object.keys ./ Элементы управления угловой формы .

Редактировать

Элемент управления всегда будет строкой из forEach();, так что я бы попробовалобъявив что-то новое ниже правильного типа.Смотри выше.Это заставляет мою IDE распознавать, что это элемент управления формой, поэтому, надеюсь, встретит ваш tsconfig.

...