2016-03-02 9 views
9

アプリのウェルカムページ/スライドにイオンスライドコンポーネント(4つのスライド)を使用する。最後のスライドにスキップする機能が必要です。ドキュメントは、Swiper APIのイオンスライドの実装を言います。私は以下のようなメソッドにアクセスする必要があります:mySwiper.slideTo(index, speed, runCallbacks);イオン2スライドコンポーネント - スワイパーAPIにアクセスする方法

実装上のヒント?

+0

を試すことができます。 –

答えて

6

にそれを使用することができます。

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); 
    } 
} 

さらなるオプションについてはswiper apiをご覧ください。

0

あなたはオプションのプロパティ内の関数を渡すことができますSwiper

@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); 
    } 
} 

でサービスを作成して、あなたの@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

このアプローチでは、Ionic 2 Slidesの実装とは独立したSwiperライブラリをインストールする必要がありますか? –

1

カスタムディレクティブなしのシンプルなソリューションを探しているなら、あなたは私も、このために探しています。この

constructor(
    private _app: IonicApp 
){} 
    ngAfterViewInit() { 
    this._slider = this._app.getComponent('my-slider'); 
    } 
    goToSlide(slideIndex){ 
    this.slider.slider.slideTo(slideIndex); 
    } 
関連する問題