我目前正在开展Ionic2项目。在一个页面上(例如PageB)我在调用loader.dismiss()之后显示一个Loader(在ionViewWillEnter()事件内)直到Ajax请求成功。它工作得很好。在ajax请求后,用户点击某些内容转到下一页(例如:PageC)。但是当用户从PageC返回到PageB时,加载器再次可见。
我想知道是否有任何函数,以便在PageB加载时我可以知道页面是否从PageC(从历史记录)转换,并阻止加载程序加载。
PageB的Smaple代码是
ionViewWillEnter()() {
this.presentLoading();
}
presentLoading() {
this.loader = this._loadingCtrl.create({
content: "Please wait..."
});
this.loader.present();
}
答案 0 :(得分:1)
您可以在ionviewWillEnter
或ngOnInit
内设置相同的调用并显示加载调用,而不是在ionViewDidLoad
中放置ajax请求。
ngOnInit(){
this.presentLoading();
}
在初始页面加载期间,这些生命周期钩子只被调用一次。如果将ajax调用放在这个钩子中是有意义的,它将提供相同的效果,当用户从PageC返回到PageB时,加载器将不会显示。