2016-08-06 16 views
6

Ich verwende Ionic 2 ion-slides, und möchte einige Instanzmethoden darauf aufrufen. Ich habe das folgende Markup:Wie bekomme ich die Instanz eines Ionenobjektträgers?

<ion-content padding> 
    <ion-slides (ionDidChange)="onSlideChanged($event)" id="loopSlider"> 
    <ion-slide *ngFor="let slide of slides"> 
    <h1>{{ slide.title }}</h1> 
    </ion-slide> 
</ion-slides> 
</ion-content> 

ich versucht habe, mit dem folgenden Code ich in einem (vielleicht veraltet) Beispiel gefunden:

private gotoSlide(index: number): void { 
    this.sliderComponent = this.app.getComponent('loopSlider'); 
    this.sliderComponent.slider.slideTo(index); 
    } 

aber this.app.getComponent('loopSlider'); immer wieder null.

Kann jemand die Komponente Instanz, so dass ich seine API verwenden kann?

Antwort

4

Per the Ionic documentation, können Sie dies @ViewChild mit tun:

import { Component, ViewChild } from '@angular/core'; 
import { Slides } from 'ionic-angular'; 
... 

@Component({ 
    ... 
}) 
class MyPage { 
    @ViewChild('loopSlider') sliderComponent: Slides; 

    ... 
} 
+0

Großer Dank dafür! Und da ist es richtig in der doco (das habe ich verpasst) – peterc

+0

Für alle die immer noch Probleme haben: Stellen Sie sicher, dass Sie 'Slides' wirklich importiert haben! – Robert