第二次未在Ionic中调用函数

时间:2018-11-17 13:19:30

标签: angular typescript ionic-framework ionic2 ionic3

在我的离子应用程序中,我有2个标签,分别为appliedrejected。当我第一次导航到appliedPage时,将调用构造函数中的方法,并显示与RejecedPage相同的输出。但是,当我转到第三页并单击“应用/拒绝”按钮时,所做的更改应反映在AppliedPageRejectedPage上。但是此后单击“应用”或“拒绝”,当我导航到appliedrejected页面时,不会调用构造函数中的Http。每当我打开特定页面时,该页面应自动调用一个方法(从中使用DBhttp检索数据)。我该怎么办?

constructor(public navCtrl: NavController, public navParams: NavParams,
              private getAppliedlist: ActionsProvider)
  {

   console.log('fetching data`);
    this.getAppliedlist.getAppliedList().subscribe((data: any) => {
      this.applied = data;
      console.log(this.applied);
    })
  }

上面的代码来自AppliedPage

1 个答案:

答案 0 :(得分:1)

您应该使用ionic lifecycle functions而不是在构造函数中执行此操作。在这种情况下,ionViewWillEnter函数将是完美的

根据文档,它称为:

  

进入页面时,该页面变为活动页面之前。每次进入视图时都将其用于要执行的任务(设置事件侦听器,更新表等)。

ionViewWillEnter() {
  console.log('fetching data`);
  this.getAppliedlist.getAppliedList().subscribe((data: any) => {
    this.applied = data;
    console.log(this.applied);
  })
}