Ionic 2 - 从模态中获取数据

The*_*eal 21 ionic2

我有一个组件,这是我的主要界面.在此组件内部,单击按钮可打开离子2模态,允许选择项目.

我的模态页面(itemsPage):

..list of items here

    <button ion-button [disabled]="!MY_TURN || !selectedItem || !selectedItem.quantity"
       (click)="useItem(selectedItem)">
        <span>Choose item {{selectedItem?.name}}</span>
      </button>
Run Code Online (Sandbox Code Playgroud)

useItem() 应该:

  • 将项目数据发送到我的主界面组件
  • 关闭模态
  • 在我的主界面中执行一个方法

我怎么能做这样的行动?找不到有关Ionic 2中模态和组件之间进行通信的任何文档.

Sur*_*Rao 52

这只是使用参数的问题viewController.

在主界面组件中,

let chooseModal = this.modalCtrl.create(itemsPage);
  chooseModal.onDidDismiss(data => {
     console.log(data);
});
chooseModal.present();
Run Code Online (Sandbox Code Playgroud)

在你的模态页面中,

useItem(item) {   
  this.viewCtrl.dismiss(item);
}
Run Code Online (Sandbox Code Playgroud)

模态控制器链接在这里