ionic-team / ionic-team/ionic-framework

bug: ionSliding.open('start') ionSliding.open('end') makes the start options unclickable

未关闭
#29,975 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
triage
主要语言
TypeScript
星标
52.7k
派生
13.3k
平均合并
1 天 15 小时
30 天内合并 PR
51

描述

### Prerequisites

- [X] I have read the [Contributing Guidelines](https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#creating-an-issue).
- [X] I agree to follow the [Code of Conduct](https://ionicframework.com/code-of-conduct).
- [X] I have searched for [existing issues](https://github.com/ionic-team/ionic-framework/issues) that already report this problem, without success.

### Ionic Framework Version

v7.x

### Current Behavior

After doing
```
itemSliding.open('end').then(() => itemSliding.open('start')
```
The item options are not clickable on start

### Expected Behavior

Item options should be clickable

### Steps to Reproduce

```
itemSliding.open('end').then(() => itemSliding.open('start')
```
Try to click start options is not possible

### Code Reproduction URL

https://github.com/too/lazy/to/do/this

### Ionic Info

```
Ionic:

Ionic CLI : 7.2.0 (/usr/local/lib/node_modules/@ionic/cli)
Ionic Framework : @ionic/angular 8.2.0
@angular-devkit/build-angular : 17.3.7
@angular-devkit/schematics : 17.3.7
@angular/cli : 17.3.7
@ionic/angular-toolkit : 11.0.1

Capacitor:

Capacitor CLI : 6.0.0
@capacitor/android : 6.0.0
@capacitor/core : 6.0.0
@capacitor/ios : not installed

Utility:

cordova-res : not installed globally
native-run : 2.0.1

System:

NodeJS : v20.18.0 (/usr/local/bin/node)
npm : 10.8.3
OS : Linux 6.8
```

### Additional Information

The problem is that the class `item-sliding-closing` doesn't get deleted when opening the start slide:

Workaround:

```
slidingItem.getOpenAmount().then((amount: any) => {
if (amount === 0) {
slidingItem.open('end');
} else if (amount > 0){
slidingItem.open('start').then(() => {
slidingItem.el.classList.remove('item-sliding-closing')
})
} else {
slidingItem.close();
}
});
```

贡献指南

打开贡献指南

调研方向

Reproduce the issue with itemSliding.open('end') followed by itemSliding.open('start'), then inspect how the item-sliding-closing class is handled during the transition. Verify the fix by confirming that the start options are clickable after the sequence, without relying on the reported workaround.

由索引模型根据 Issue 内容生成。

评估

技术栈
angular, typescript
领域
frontend
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

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