web-dev-qa-db-fra.com

Itérer Angular 2+ FormArray

J'ai un FormArray et j'ai besoin de parcourir chacun de ses membres.

Je vois qu'il y a une méthode get dans les docs , mais je ne vois pas où trouver les clés, ni même la longueur.

Comment puis-je itérer un FormArray?

13
BBaysinger

Vous avez une propriété controls dans FormArray qui est un tableau d'objets AbstractControl. Vérifiez la documentation spécifique pour FormArray et vous verrez qu'ils héritent également de AbstractControl comme le FormControl que vous avez publié.

N'oubliez pas que dans le tableau de contrôles, vous pouvez à nouveau avoir à l'intérieur des objets FormArray ou FormGroup en plus des objets FormControl car il peut y avoir des groupes ou des tableaux imbriqués.

Voici un exemple simple:

for (let control of formArray.controls) {
   if (control instanceof FormControl) {
      // is a FormControl
   }
   if (control instanceof FormGroup) {
      // is a FormGroup  
   }
   if (control instanceof FormArray) {
      // is a FormArray
   }
}
20
AlesD