2016-03-02 7 views
9

Korzystanie z komponentu ion-slides (4 slajdy) na stronie powitalnej aplikacji/slajdach. Potrzebuję dla użytkownika możliwości przejścia do ostatniego slajdu. Dokumenty mówią, że implementacja jonowych slajdów to Swiper API. Muszę uzyskać dostęp do metod takich jak: mySwiper.slideTo(index, speed, runCallbacks);Moduł Ionic 2 Slides Component - jak uzyskać dostęp do interfejsu API Swiper

Wskazówki dotyczące wdrażania?

+0

szukam tego, too. –

Odpowiedz

6

można przekazać funkcję w nieruchomości opcji.

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

Dalsze opcje można znaleźć na stronie swiper api.

0

Można wykonać usługę z 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); 
    } 
} 

i użyć go do swojej @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

Czy to oznacza, że ​​muszę zainstalować bibliotekę Swiper niezależnie od implementacji Ionic 2 Slide? –

1

Jeśli szukasz prostego rozwiązania bez dyrektyw niestandardowych, można spróbować tego

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