我的Ionic 2应用程序中有一个模态。在此模式中,单击按钮,弹出确认提示("您确定吗?")。通过单击是,我执行某些操作,然后通过调用此方法来解除模态:
close() {
this._viewCtrl.dismiss();
}
和_viewCtrl
是我的类的属性,我在构造函数中以这种方式定义:
constructor(
public _nav: NavController,
public _viewCtrl: ViewController,
public _profile: Profile,
params: NavParams) { ... }
我的问题是在模态背后我有一个" 3 Tabs Page"等等。一切正常,3个标签很好,我的模态是好的,它应该解散,问题是,当模态被解除时,3个标签打破!它们冻结在第二个选项卡上(这是调用模态的选项卡)!即使我单击选项卡1和3,我只看到选项卡2的内容,但我什么也做不了。
我很确定解雇前的操作不应该成为问题。我发现如果我注释掉this.close();
部分,一切都很顺利!模态不会关闭,但我可以手动关闭它(具有相同功能,这是奇怪的事情!)然后我返回标签页并且标签是很好。
应用程序发生了什么?
PS。控制台中没有显示错误!
答案 0 :(得分:0)
如果您在控制台中检查,您将看到模态覆盖仍然存在。这就是为什么当你点击你的应用程序上的任何按钮时,你没有任何反应,因为你点击透明覆盖层。
答案 1 :(得分:0)
我现在遇到了类似的问题,我在Ionic 2 Beta 6之前解雇了Modal
,但是在最新的Beta 10上,它已经无法使用了。
我的逻辑如何运作:
Loading
组件的进度Loading
然后Modal
,但以同步方式呼叫现在这不适用于最新的Beta版。我必须做的是:
this.loading.onDismiss(() => {
this.viewController.dismiss();
});
this.loading.dismiss();
我从这里得到了这个解决方法: https://github.com/driftyco/ionic/issues/6325