首页 > 解决方案 > setRoot() 在离子 3 中关闭模式后不起作用

问题描述

我试图在离子 3 中关闭模式后设置根,但它不能正常工作。我想在打开并选择模式值后将根 /opportunities/opportunities-detail 更改为机会/opportunities-unit

只有当我像这样使用主根导航时它才有效

this.app.getRootNav().setRoot('OpportunitiesUnitPage');

但我不想在它之前更改我的根,我只想在打开模式后推新根我试过这个,但它不起作用

 this.navCtrl.push('OpportunitiesUnitPage', {});

这是我完成 oppotunities-detail.ts 的完整代码

let modalQualifyVerify = this.modalCtrl.create('OpportunitiesNotifPage', {
       meta: this.meta,
       opportunity:this.opportunity,
       selection: this.savedSelection,
       status: 'unitSelect'}, {cssClass: 'select-modal-unit' });
     modalQualifyVerify.onDidDismiss(data => {
     });
     modalQualifyVerify.present();

机会通知.ts

changeUnit(){
this.viewCtrl.dismiss(null);
this.navCtrl.push('OpportunitiesUnitPage', {
  meta: this.meta,
  opportunity: this.opportunity,
  selection: this.savedSelection
});

}

你们能帮我解决一下吗?谢谢你 :)

标签: angularionic-frameworkmodal-dialogroot

解决方案


我已经找到了这些家伙,我在关闭模式后设置了根目录,这是我制作的完整代码

机会通知.ts

changeUnit(){
var dismissData = {status:'unitPage'};
this.viewCtrl.dismiss(dismissData);

}

机会详情.ts

 let modalQualifyVerify = this.modalCtrl.create('OpportunitiesNotifPage', {
      meta: this.meta,
      opportunity:this.opportunity,
      selection: this.savedSelection,
      status: 'unitSelect'}, {cssClass: 'select-modal-unit' });
    modalQualifyVerify.onDidDismiss(data => {
      if(data.status == "unitPage"){
        this.navCtrl.push('OpportunitiesUnitPage', {
            meta: this.meta,
            opportunity: this.opportunity,
            selection: this.savedSelection
          });
      }
    });
    modalQualifyVerify.present();

推荐阅读