【发布时间】:2018-08-21 00:45:01
【问题描述】:
我的应用有三个标签:
- Tab1
- Tab2
- Tab3
在 Tab2 上,用户已完成订单。此时,我想清除 Tab2 的导航堆栈,并且我想将用户导航到通常位于 Tab3 下的页面。
目前,这就是我所拥有的:
this.navCtrl.popToRoot();
this.navCtrl.parent.select(TabsPage.Tab3);
this.navCtrl.push(OrderStatusPage);
其中 TabsPage.Tab3 是 Tab3 的索引。
我弹出到根目录的原因是试图清除导航堆栈中的页面,以便当用户稍后返回此选项卡时,我希望他们返回该堆栈的根页面。
然后,我关注了 Ionic 的 Tab 文档,该文档建议我可以通过调用 this.navCtrl.parent.select 来更改选项卡。
最后,我尝试将 OrderStatusPage 推入堆栈。
当我运行它时会发生以下情况:
- 当应用程序弹出到根目录时,它似乎确实清除了导航堆栈,但在控制台中我可以看到它点击了我的登录页面,该页面不在选项卡导航堆栈上,所以我不明白如何那个会发生。我也不喜欢它导航到根目录的方式。是否有某种方法可以在不将用户移离页面的情况下清除堆栈?
- 然后页面成功导航到我的 Tab3 页面,但将 OrderStatusPage 推送到堆栈的命令似乎没有注册。
有什么想法吗?
【问题讨论】:
标签: ionic-framework