我正在使用Ionic 2并有一组标签。每个选项卡都有自己的导航堆栈。
用户可以在任何选项卡中深入几页,然后切换选项卡。
问题是选项卡1中存在影响选项卡2内容的交互。我发现如果用户按特定顺序执行某些操作,则会出现错误:
运行时错误
未捕获(承诺):找不到removeView
我相信这是因为Ionic正在尝试删除因内容已更改而不再存在的视图。
在选项卡1中,用户按下按钮以加载选项卡2.应用程序保存他们在本地存储中所做的选择,然后选项卡2在根页面上加载。我使用以下代码选择Tab 2:
this.navCtrl.parent.select(1);
我相信我可以在选中标签时转到导航堆栈的根目录来防止此问题,但我该怎么办呢?
我试过了:
this.navCtrl.parent.select(1);
this.navCtrl.parent.goToRoot();
但有了这个,没有任何反应。选项卡不会更改,也没有错误。
所以,我的问题是:如何更改选项卡并从另一个选项卡导航到导航堆栈的根目录?