【问题标题】:Refresh page content after dismiss popover . IONIC 3关闭 popover 后刷新页面内容。离子 3
【发布时间】:2019-01-08 06:50:38
【问题描述】:

我有一个带有 4 个选项卡的应用程序选项卡,每个选项卡根据配置显示一些数据。该页面有一个标题,其中包含一个带有设置选项的弹出框组件。 用户在设置上设置了一些配置并返回到某个标签页后,该页面必须刷新内容。

我正在使用 ionViewDidEnter 或 ionViewWillEnter 生命周期事件并检查之前的设置是否已更改但事件尚未被捕获,仅当我更改为其他标签页时。

标签页A

export class HomePage implements OnInit {
  ionViewDidEnter(){
    if(this.client.doClientChanged(this.clientName)){
      console.log("changed");
    }
    else{
      console.log("not changed");
    }
  }
  ionViewWillEnter(){
    console.log("test")
  }
}

标题组件

export class PrimeHeaderComponent {
  constructor(public popoverCtrl: PopoverController) {}

  presentPopover(event: any) {
    let popover = this.popoverCtrl.create(MenuPage);
    popover.present({
      ev: event
    });
  }
}

弹窗组件

export class MenuPage {

  constructor(
    public viewCtrl: ViewController, private navCtrl: NavController) {}

  openConfig(){    
    this.navCtrl.push(ConfigPage);    
  }
}

当我选择配置时,我返回到仍然显示弹出框的上一页,当我关闭弹出框时,生命周期事件不会发生任何事情。

【问题讨论】:

  • 你能再分享一下你所说的配置是什么意思吗?是纯数据还是有类似的 CSS 样式更改等?
  • 是的。它是纯数据。我有很多用户,管理员可以在应用程序上看到有关用户的任何信息,但我需要选择一个、两个或更多客户,然后刷新数据。我已经解决了这个问题,我会在几个小时后发布。

标签: javascript angular typescript ionic-framework ionic3


【解决方案1】:

使用popover controller.onDidDismiss()

let popover = this.popoverCtrl.create(MenuPage);

popover.onDidDismiss(() => {
  //your action here
});

popover.present({
  ev: event
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-30
    • 2022-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多