ionic-team / ionic-team/ionic-framework
bug: angular, cannot easily access router outlet inside of tabs
- 主要语言
- TypeScript
- 星标
- 52.7k
- 派生
- 13.3k
- 平均合并
- 1 天 14 小时
- 30 天内合并 PR
- 50
描述
# Bug Report
**Ionic version:**
[x] **4.9.0**
**Current behavior:**
When setting `[swipeGesture]="false"` on the main router outlet, swipe to go back will not be disabled for child outlets (ion-tabs).
Setting `swipeBackEnabled: true` in the import of `IonicModule.forRoot` also has no effect on routing based navigation
**Expected behavior:**
--> A way to globally disable swipe to go back, as it is currently broken on iOS.
**Steps to reproduce:**
See above.
**Related code:**
No related code.
**Other information:**
Due to #19293 , we have to disable swipe to go back. Because of the way tabs now work, we no longer define our own `ion-router-outlet` for each tab, and thus are not able to set [swipeGesture]="false" for tabs.
**Ionic info:**
```
Ionic:
Ionic CLI : 5.2.7 (C:\Users\xxx\AppData\Roaming\nvm\v10.16.3\node_modules\ionic)
Ionic Framework : @ionic/angular 4.9.0
@angular-devkit/build-angular : 0.803.3
@angular-devkit/schematics : 8.3.3
@angular/cli : 8.3.3
@ionic/angular-toolkit : 2.0.0
Cordova:
Cordova CLI : 8.1.2 (cordova-lib@8.1.1)
Cordova Platforms : not available
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.0.1, (and 13 other plugins)
Utility:
cordova-res : not installed
native-run : 0.2.8
System:
Android SDK Tools : 26.1.1 (C:\Users\xxx\AppData\Local\Android\sdk)
NodeJS : v10.16.3 (C:\Program Files\nodejs\node.exe)
npm : 6.9.0
OS : Windows 10
```
贡献指南
调研方向
首先,在 iOS 上使用 Ionic 4.9.0、Angular tabs 和嵌套的 router outlet 重现该问题。检查 [swipeGesture]="false" 设置以及 IonicModule.forRoot({ swipeBackEnabled: true }) 在主 outlet 和子 outlet 中的行为。完成标准是:对于基于 routing 的导航,全局禁用向后滑动返回,包括 tab outlet,且不需要单独的 ion-router-outlet 元素。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- angular, typescript
- 领域
- frontend, mobile-dev
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100