是否有一个幻灯片事件在幻灯片转换开始之前触发?
我已经尝试过 ionSlideNextStart 和 ionSlideWillChange ,但是它们都没有作用我需要的方式。
我想要的是根据条件锁定滑动。
例如,如果要放大图像,则要锁定滑动,如果要缩小图像,则要解锁。
答案 0 :(得分:0)
根据我的评论,IMO执行此操作的更好方法是将幻灯片锁定在适当的事件上。例如在您的放大示例中,在发生放大时锁定幻灯片,并在恢复图像时解锁。
但是,您是否想使用ionSlideNextStart
或ionSlideWillChange
滑到幻灯片开头的锁定路径,也许可以分两步完成。
在该事件上,您必须返回到上一张幻灯片,因为该幻灯片事件已经开始,并且我不确定是否有办法停止它: 伪代码:
slide.slider.slideTo(indexOfPrevSlide, 2000)
然后,使用shouldLockSwipeToNext
和shouldLockSwipeToPrevg
答案 1 :(得分:0)
谢谢您的想法。我选择了第一个选项。我以为自己很想,但我还是Ionic的新手,我还在学习。
缩放功能实际上是一个指令( zoom-pan ),但对我而言却没有可以从指令访问组件。
<ion-slides zoom-pan>
<ion-slide *ngFor="let page of pages;">
[...]
</ion-slide>
</ion-slides>
但是,我做了一些更多的研究,感谢this我将ViewContainerRef
注入了指令的构造函数。
通过this.hostComponent = this.viewContainerRef["_data"].componentView.component
,我可以访问幻灯片,并且在放大/缩小时可以锁定/解锁滑动。