ionic-team / ionic-team/ionic-framework

bug: tap click cancels gesture when used on button

未关闭
#22,491 15 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
help wanted package: core type: bug
主要语言
TypeScript
星标
52.7k
派生
13.3k
平均合并
1 天 15 小时
30 天内合并 PR
51

描述

# Bug Report

**Ionic version:**
[x] **5.x** (5.4.4)

**Current behavior:**
If the `GesturesController` is used on an Ionic button. The ripple-effect does not work anymore.

**Expected behavior:**
The ripple-effect should work in this case.

**Steps to reproduce:**
In my case: Create a directive with the Ionic `GesturesController` and assign it to a `ion-button` or `ion-fab-button`.

**Related code:**

```ts
import { GestureController } from "@ionic/angular";
/* ... */
constructor (private gestureCtrl: GestureController) {}
/* ... */
this.gestureCtrl.create({
gestureName: "long-press",
el: this.nativeElement,
threshold: 0,
onStart: detail => {
console.log("onStart", detail);
this.onStart.emit(detail.event);
},
onEnd: detail => {
console.log("onEnd", detail);
this.onEnd.emit(detail.event);
}
});
```

```html



```

### [Stackblitz Demo](https://stackblitz.com/edit/ionic-gestures-ripple-bug?embed=1&file=src/app/tab1/tab1.page.html)

![gestures-ripple-issue](https://user-images.githubusercontent.com/60390085/98969866-92a5ab00-250f-11eb-8834-499419c44ccc.gif)

**Other information:**

I guess it's about event propagation. The ripple effects does not get any clicks. But how to fix this? I already tested some options like `passive`.

https://ionicframework.com/docs/utilities/gestures

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。