【问题标题】:ionic reload a page from another page/modal离子从另一个页面/模式重新加载页面
【发布时间】:2018-12-01 22:11:14
【问题描述】:

编辑

我注意到 subscribe 事件必须先于并调用 publish 。但是每次应用启动时都要求用户打开TabOut page会很愚蠢。


我不需要总是重新加载TabOut page,所以我需要这种事件类型的方法来完成这项工作。否则可以在 ionViewDidEnter() 上调用重新加载。


我有 2 个选项卡和 1 个模式。 /TabIn、/TabOut 和 /ModalIn。

Tabs page 用作数据列表,显示来自ionViewDidLoad() 的数据库中的数据。

ModalIn page 用作用户输入和提交数据的数据入口。此页面位于TabIn page 中,当用户单击每个数据列表时将调用该页面。

ModalIn page 成功提交表单后,我想在TabOut page 上再次调用刷新(无论之前是否已加载)。我尝试使用事件发布它不起作用。下面是我的代码。

ModalIn .ts

let headers: any = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' }),
options: any = { "username": val, formValue },
url: any = "some_url_here";

this.http.post(url, options, headers)
.subscribe((data: any) => {

  if (data.status == 'success') {
    this.events.publish('shouldReloadData');
  } else {

  }
},
  (error: any) => {
    console.log(error);
  });

TabOut .ts

constructor(public events: Events) {
  events.subscribe('shouldReloadData', () => {
    // Reload the page here
    console.log("should reloadddd"); // <- This is not working
  });
}

【问题讨论】:

    标签: ionic-framework ionic3


    【解决方案1】:

    在 TabOut.ts 中使用 this 关键字调用 subscribe

    constructor(public events: Events) {
    
      this.events.subscribe('shouldReloadData', () => {
    
      });
    }
    

    【讨论】:

      猜你喜欢
      • 2016-11-17
      • 2023-04-11
      • 1970-01-01
      • 1970-01-01
      • 2012-08-31
      • 1970-01-01
      • 1970-01-01
      • 2017-06-08
      • 1970-01-01
      相关资源
      最近更新 更多