离子5张幻灯片ionSlideDidChange未要求最后一张幻灯片

问题描述 投票:0回答:1

我目前正在使用离子载玻片(在Ionic 5中,并且在选择上一张载玻片的索引时遇到问题。我将slidesPerView设置为1.3后,会发生此问题。

即使尝试滑动到最后一张幻灯片时,也不会触发ionSlideDidChange事件(当我滑动到其他幻灯片时,触发事件就很好了。)

<ion-slides #subscriptionSlider [options]="slideOpts" pager="true" (ionSlideDidChange)="ionSlideDidChange()">

我认为离子方面存在问题,因为如果我在最后一张幻灯片上,getActiveIndex也会工作不正确(尽管它会返回最后一张幻灯片索引)

以前有人遇到过这个问题吗?

typescript ionic-framework ionic4 ion-slides
1个回答
0
投票

使用ionSlideTouchEnd事件已解决的问题

这里的代码

<ion-slides #subscriptionSlider [options]="slideOpts" pager="true" (ionSlideTouchEnd)="ionSlideTouchEnd($event)">
...
</ion-slides>

// And then in ts file
ionSlideTouchEnd(event) {
    this.subscriptionSlider.getActiveIndex().then(index => {
      let realIndex = index;
      if (event.target.swiper.isEnd) {  // Added this code because getActiveIndex returns wrong index for last slide
        realIndex = this.subscriptions.length - 1;
      }
      // You can now use real index 
    });
  }

希望这可以帮助其他人解决离子5中离子幻灯片的活性指数问题。

© www.soinside.com 2019 - 2024. All rights reserved.