Angular 返回更新数据的视图

Angular 返回更新数据的视图,angular,cordova,ionic-framework,Angular,Cordova,Ionic Framework,我试图将数据从推送视图传递回根目录。推送视图时,我正在执行以下代码: addItem(){ let addModal = this.modalCtrl.create(AddItemPage); addModal.onDidDismiss((item) => { if(item){ this.saveItem(item); this.setData(); } }); addModal.present(); }

我试图将数据从推送视图传递回根目录。推送视图时,我正在执行以下代码:

addItem(){

    let addModal = this.modalCtrl.create(AddItemPage);

    addModal.onDidDismiss((item) => {
       if(item){
        this.saveItem(item);
        this.setData();
      }
 });

addModal.present();

}
当我执行此代码时,一个新视图被推送到导航堆栈。我在按下的页面中输入信息,然后单击“保存”按钮。当我点击“保存”按钮时,我执行以下代码:

saveItem(){

    this.dateAdded=new Date();

    let newItem = {
      id: this.dateAdded,
      date: this.datepipe.transform(this.dateAdded, 'MM-dd-yy'),
      name: this.name,
      status: "pending",
      description: this.description
    };

    this.view.dismiss(newItem);

}
saveItem(item){
    this.items.push(item);
}
将控件传递回根目录时,将执行addModal.ondidDisclesh代码,并通过执行以下代码将从推送视图返回的数据添加到我的数组中:

saveItem(){

    this.dateAdded=new Date();

    let newItem = {
      id: this.dateAdded,
      date: this.datepipe.transform(this.dateAdded, 'MM-dd-yy'),
      name: this.name,
      status: "pending",
      description: this.description
    };

    this.view.dismiss(newItem);

}
saveItem(item){
    this.items.push(item);
}
因此,我能够建立一个项目数组。现在,我希望能够更新任何选定的数组元素。当项目显示在根视图中时,我可以滑动项目并选择我的“编辑”按钮。当我这样做时,我执行以下代码:

saveItem(){

    this.dateAdded=new Date();

    let newItem = {
      id: this.dateAdded,
      date: this.datepipe.transform(this.dateAdded, 'MM-dd-yy'),
      name: this.name,
      status: "pending",
      description: this.description
    };

    this.view.dismiss(newItem);

}
saveItem(item){
    this.items.push(item);
}
编辑项(项,滑动项){

我的更新页面显示出来,我用导航参数中传递的数据填充输入框。我的问题是,当控件返回到根目录时,我如何引用更新的数据?我尝试引用this.navCtrl.viewDidLeave,但这不正确,因为我假设,在这一点上,它引用的是根目录视图,而不是根目录更新视图。我相信this.navCtrl.push()应该返回更新的数据,但我不知道如何/从何处访问它


谢谢您的帮助。

我只需要稍微休息一下,我意识到我需要做什么。我用此代码替换了我的editItem函数,我的一切都正常工作:

editItem(item, slidingItem) {

  this.closeSlider(slidingItem);
  let addModal = this.modalCtrl.create(ItemUpdatePage,{
    item: item
  });

  addModal.onDidDismiss((item) => {

      if(item){
        this.updateArray(item);
      }

  });

  addModal.present();

}