web-dev-qa-db-fra.com

Utilisez ViewChild pour les éléments dynamiques - Angular 2 & ionic 2

Je veux utiliser plusieurs IonicSlides que j'ai ajouté dynamiquement, donc je ne peux pas utiliser viewChild. veuillez suggérer un moyen de résoudre ce problème.

Template.html:

<div *ngFor="let name of title;let i = index;">

    <ion-slides  id="something" #slides  >
        //some code
    </ion-slides>
</div

Component.ts:

  @ViewChild('slides') slides: QueryList<Slides>;

  ....

  ngAfterViewInit(){



        setTimeout( ()=>{

         alert(this.slides.toArray()); //this line rise error 


        },3000);


  }

Erreur:

_this.slides.toArray n'est pas une fonction

7
Mohsen

Utilisation @ViewChildren au lieu de @ViewChild, En savoir plus

@ ViewChild:

Vous pouvez utiliser ViewChild pour obtenir le premier élément ou la directive correspondant au sélecteur depuis la vue DOM.

@ ViewChildren:

Vous pouvez utiliser ViewChildren pour obtenir la QueryList des éléments ou des directives du DOM vue.

11
Vivek Doshi