Ionic2 如何从选项卡根目录检查当前选项卡是否可以返回
TLDR: 我有我的标签的参考号Ionic2 如何从选项卡根目录检查当前选项卡是否可以返回,ionic2,Ionic2,TLDR: 我有我的标签的参考号 @ViewChild('tabsPage') tabRef: Tabs; 我需要获取当前选项卡的导航堆栈,检查它是否可以返回,如果需要,请返回 完整故事: 我有一个标签页,我从另一个带有自定义动画的页面到达 用户按下“硬件后退”按钮时,我的选项卡的行为必须如下所示: 如果用户在选项卡0中,请使用自定义动画返回 如果用户不在选项卡0中,请转到选项卡0 如果用户已在当前选项卡中导航,请返回该选项卡的导航堆栈 为了实现这种行为,我在IonViewDiCenter
@ViewChild('tabsPage') tabRef: Tabs;
我需要获取当前选项卡的导航堆栈,检查它是否可以返回,如果需要,请返回
完整故事:
我有一个标签页,我从另一个带有自定义动画的页面到达
用户按下“硬件后退”按钮时,我的选项卡的行为必须如下所示:
- 如果用户在选项卡0中,请使用自定义动画返回李>
- 如果用户不在选项卡0中,请转到选项卡0李>
- 如果用户已在当前选项卡中导航,请返回该选项卡的导航堆栈
如果存在可以弹出回的有效上一页,则返回true。否则返回false。显然,选项卡本身就是导航控制器。所以我用这种方式解决了我的问题:
if (this.tabRef.getSelected().canGoBack()) {
this.tabRef.getSelected().pop();
} else if (this.tabRef.getSelected().index == 0) {
this.navCtrl.pop({
animation: 'nav-shrink'
, direction: 'back'
})
} else {
this.tabRef.select(0);
}
这是我知道的部分。我不知道如何在我的选项卡根页面中检查特定选项卡。
if (this.tabRef.getSelected().canGoBack()) {
this.tabRef.getSelected().pop();
} else if (this.tabRef.getSelected().index == 0) {
this.navCtrl.pop({
animation: 'nav-shrink'
, direction: 'back'
})
} else {
this.tabRef.select(0);
}