我想知道是否有办法刷新ngOnInit()函数或刷新组件。我不想使用pull to refresh方法。我想按下按钮或点按它。谢谢
home.ts文件
checkNetwork() {
console.log("check internet");
this.platform.ready().then(() => {
if(this.network.type == "none"){
this.shouldHide = false;
this.dividerHide = true;
}
let alert = this.alertCtrl.create({
title: "Connection Status",
subTitle: <string> this.network.type,
buttons: ["OK"]
});
alert.present();
});
}
home.html文件
<ion-card [hidden]="shouldHide">
<ion-card-header>
<img src="img/sad.png" />
</ion-card-header>
<ion-card-content>
<ion-card-title style="text-align:center">
No INTERNET!
</ion-card-title>
<button ion-button full (click)="refreshPage($event)">Retry</button>
</ion-card-content>
当连接可用时,我希望页面刷新
答案 0 :(得分:4)
谢谢大家,这就是我管理它的方式
home.ts文件
ngOnInit(){
this.LoadData();}
checkNetwork() {
console.log("check internet");
this.platform.ready().then(() => {
if(this.network.type == "none"){
this.shouldHide = false;
this.dividerHide = true;
}else{
this.shouldHide = true;
this.dividerHide = false;
this.presentLoading()
}
});
}
refreshPage()
{this.LoadData();
}
public LoadData(){...}
Home.html文件
<ion-card [hidden]="shouldHide">
<ion-card-header>
<img src="img/sad.png" />
</ion-card-header>
<ion-card-content>
<ion-card-title style="text-align:center">
Pas de connexion internet!
</ion-card-title>
<button ion-button full (click)="refreshPage()">Reessayer</button>
</ion-card-content>
答案 1 :(得分:0)
使用此代码
refreshPage() {
this.navCtrl.setRoot(this.navCtrl.getActive().component);
}
答案 2 :(得分:0)
您可以通过调用ngOnInit()重新初始化页面: this.ngOnInit();
答案 3 :(得分:-1)
您可能需要使用init方法或Rx的订阅来重构您的代码结构,以便它不需要页面刷新。
如果您需要重新加载页面,为什么不使用重新加载方法?
x
&#13;
编辑:
您使用的是network.onConnect订阅吗?
window.location.reload();
&#13;