2017-05-08 66 views
0

我正在使用Ionic 2和角2來進行應用程序開發。我使用ionic-angular modal創建了彈出窗口。我需要使用離子導航(push)方法從彈出窗口導航到其他頁面。但'它沒有用於我的目的。下一頁正在加載相同的組件。從離子彈出導航不起作用

我的代碼

爲了打開彈出

openModal() { 

     let myModal = this.modalCtrl.create(CreateModal); 
     myModal.present(); 
    } 

此功能將打開彈出窗口。在彈出式HTML我有點擊功能。

<h2 (click)="goTonext()" data-dismiss="create-modal" >Next page</h2> 

單擊功能

goTonext() { 
     this.viewCtrl.dismiss(); 
    this.navctrl.push(NextPage 
      , { 
      id: res.status 
      } 
     ); 
} 

此功能將關閉彈出式窗口,在同一個頁面加載下一頁。

它不會單獨加載下一頁。

請幫忙!!!

回答

1

當您致電this.view.dismiss()它正在關閉模式。

如果你想在解僱後做一些動作,你可以在模型的onDidDismiss()中做到。

在原來的組件,

openModal() { 

     let myModal = this.modalCtrl.create(CreateModal); 
     myModal.onDidDismiss(data=>{ 
      if(data){ 
      this.navctrl.push(NextPage 
      , { 
      id: data.status 
      } 
      } 
     ); 
     }); 
     myModal.present(); 
    } 

送在解僱函數調用res

this.viewCtrl.dismiss(res); 
+0

openModal和goTonext函數在不同的組件中。那麼我怎樣才能在resmiss函數調用中發送res。 – user3541485

+0

如果您發送解僱電話,您可以接收onDidDismiss回調 –

+0

中的數據https://ionicframework.com/docs/api/components/modal/ModalController/ –