2016-03-02 3 views
9

Verwenden von Ion-Slides-Komponente (4 Folien) auf App-Begrüßungsseite/Folien. Ich brauche Fähigkeit für Benutzer, zur letzten Folie zu springen. Dokumente sagen Ion-Slides-Implementierung von Swiper API. Ich muss auf Methoden wie zugreifen: mySwiper.slideTo(index, speed, runCallbacks);Ionic 2 Slides Component - Zugriff auf Swiper API

Tipps zur Implementierung?

+0

Ich bin für diese Suche auch. –

Antwort

6

Sie eine Funktion innerhalb der Optionen Eigenschaft passieren können.

Original answer.

@Component({ 
    selector: 'my-component', 
    template: '<ion-slides [options]="options"> 
       <ion-slide>Slide1</ion-slide> 
       <ion-slide>Slide2</ion-slide> 
      </ion-slides>', 
    directive: [IONIC_DIRECTIVES] 
}) 
export class MyComponent { 
    public slider: any; 

    constructor() { 
    this.options = { 
     onlyExternal: false, 
     onInit: (slides: any) => 
     this.slider = slides 
    } 
    } 

    click() { 
    this.slider.sliderNext(true, 250); 
    } 
} 

Weitere Optionen haben einen Blick auf die swiper api.

0

Sie können einen Service mit Ihrem swiper machen

@Injectable() 
export class HomeSwiper { 
    swiper = null; 

    initSwiper(selector) { 
    this.swiper = new Swiper(selector, { 
     pagination: '.home-swiper-pagination', 
     speed: 400, 
     spaceBetween: 100, 
     nextButton: '.swiper-button-next', 
     prevButton: '.swiper-button-prev' 
    }); 
    } 

    goTo(index) { 
    this.swiper.slideTo(index); 
    } 
} 

Und verwenden Sie es in Ihrem @Page

@Page({ 
    templateUrl: 'build/pages/home/home.html', 
    providers: [HomeSwiper] 
}) 
export class Home { 
    constructor(private swiperService: HomeSwiper) { 
    this.swiperService.initSwiper('.home-modal-swiper-container'); 
    } 

    skipSlides() { 
    this.swiperService.goTo(indexOfTheLastSlide); 
    } 
} 
+0

Bedeutet das, dass ich die Swiper-Bibliothek unabhängig von der Implementierung von Ionic 2 Slides installieren muss? –

1

Wenn Sie nach einer einfachen Lösung ohne benutzerdefinierte Richtlinien suchen, können Sie versuchen, diese

constructor(
    private _app: IonicApp 
){} 
    ngAfterViewInit() { 
    this._slider = this._app.getComponent('my-slider'); 
    } 
    goToSlide(slideIndex){ 
    this.slider.slider.slideTo(slideIndex); 
    }