主页在数据加载之前启动IONIC 2

时间:2017-02-09 09:58:37

标签: json angular ionic2

我遇到的问题真的很奇怪。在app.component.ts的Ionic 2中,我有这段代码。问题是,首先它将我重定向到主页,然后它从json加载数据。因此,在主页上的结果我得到了不确定。

app.component.ts中的代码:

export class MyApp {

 public rootPage : any;

 constructor(public platform: Platform, data : Data) {

 this.platformready();
  data.loadData();

  this.rootPage = HomePage;

 }

 private platformready() {
   this.platform.ready().then(() => {

   Splashscreen.hide();

 });

 }

}

2 个答案:

答案 0 :(得分:0)

如果您的loadData退货承诺:

this.platformready();
  data.loadData().then(res => {
    // do something with data
    this.rootPage = HomePage;
  })
  .catch(err => {
    // alert error
  });
}

如果返回Observable

this.platformready();
  data.loadData().subscribe(res => {
    // do something with data
    this.rootPage = HomePage;
  },err => {
    // alert error
  });
}

答案 1 :(得分:0)

Data是提供者吗?

如果只是在ionViewWillLoad(){}内的主页中调用它,就像这样:

constructor(data : Data) {}

ionViewWillLoad(){
  data.loadData();
}

并且像这样你可以将它保存在变量,数据库等任何地方。

如果它是应用程序中稍后更改的数据,则可以改为使用ionViewWillEnter(){}

希望有所帮助:)