ionic 之 this.navCtrl.push()和this.navCtrl.pop()得区别

案例描述

在ionic中,this.navCtrl.push()和this.navCtrl.pop()都是进行页面跳转,但是用法又有区别

例如有A B C三个页面,三个页面都是使用this.navCtrl.push()进行页面跳转,A—B B—C C—B(A B页面使用ionic自带的 ion-header 的返回按钮,C页面使用的是按钮点击事件返回到B页面)

A跳转到B页面,在B页面点击返回时,返回的是A页面

B页面跳转到C页面,C页面点击按钮跳转到B页面,而在B页面点击 ion-header 自带的返回按钮时,则返回的是C页面,这个时候已经改变了页面之间的原本的父子关系
也就是说 点击保存之后返回详情,然后详情在返回就返回到保存那个页面,然后就这样无限循环

解决办法

若是要保持原有结构,则需要在C页面的按钮点击事件中将this.navCtrl.push()改为this.navCtrl.pop() , pop()会保留原有的页面跳转关系

猜你喜欢

转载自blog.csdn.net/qq_39490750/article/details/117020878