4

我有一个 Ionic 页面,我希望在向左滑动时将其重定向到自定义页面。仅仅将我重定向回来是不够的,因为我可以从深层链接打开该页面,这意味着我没有返回窗口的历史记录。

我看到有一个手势 API,但对于这样一个常见的原因来说它有点太多了。另外,我在以前的版本中看到了向左/向右滑动事件,但在 Ionic 4/5 上没有参考。

Ionic 5 没有向左滑动的事件吗?

4

2 回答 2

3

另一种解决方案是,如果您不想添加hammerjs依赖项而只使用Ionic,则可以使用官方的ion-slides 组件将您的页面作为幻灯片进行管理。

我已经在几个应用程序上实现了这一点,并且效果非常好。

在您的示例中,您需要设置一个<ion-slides>容器,然后您的“页面”将作为<ion-slide>组件存在于其中。

然后,您可以轻松地点击该(ionSlideDidChange)事件,如下所示:

  <ion-slides
    *ngIf="!isLoading && pages"
    [options]="slideOptions"
    (ionSlideDidChange)="onSlideChange()"
    class="em-height-full"
    #pages
  >

然后在您的.jsor.ts文件中创建一个方法,例如:

async onSlideChange() {
    this.pageIndex = await this.slides.getActiveIndex();
  }

然后您可以使用 跟踪页面pageIndex。因此,在您的情况下,您将从 deepLink 打开页面(可能将其路由到“第 2 页”),然后当您在幻灯片组件上向左滑动时,您可以转到第 1 页。

于 2020-04-13T01:33:52.363 回答
0

您正在寻找这个:https ://ionicframework.com/docs/utilities/gestures

添加 HammerJS 不是一个好主意,因为您可能会遇到错误的情况。

于 2021-08-09T20:54:35.847 回答