Ionic刷新选项卡菜单实时



我的应用程序有一个标签页:

<ion-tabs>
<ion-tab-bar slot="bottom">
<ion-tab-button tab="home">
<ion-icon name="search-outline"></ion-icon>
<ion-label>Cerca</ion-label>
</ion-tab-button>

<ion-tab-button tab="inserimento">
<ion-icon name="add-circle-outline"></ion-icon>
<ion-label>Inserisci</ion-label>
</ion-tab-button>
<ion-tab-button tab="servizi">
<ion-icon name="shield-checkmark-outline"></ion-icon>
<ion-label>Servizi</ion-label>
</ion-tab-button>

<ion-tab-button  *ngIf="this.messagginonletti == 0" tab="messaggi">
<ion-icon name="mail-outline"></ion-icon>
<ion-label>Messaggi</ion-label>
</ion-tab-button>
<ion-tab-button  *ngIf="this.messagginonletti > 0" tab="messaggi">
<ion-icon name="mail-unread-outline"></ion-icon>
<ion-label>Messaggi</ion-label>
</ion-tab-button>
<ion-tab-button tab="account">
<ion-icon name="person-circle-outline"></ion-icon>
<ion-label>Account</ion-label>
</ion-tab-button>

,"messaggi"TAB有两个不同的值,一个是这个。Messagginonletti变量为0,另一个为0。Messagginonletti是>

0。如何刷新选项卡菜单来更新messagginonletti值?我使用一个函数来检索这个值:

retrieveMessages() {
return new Promise((resolve =>{
this.accsPrvds.postData(‘test.php').subscribe((res:any)=>{
//console.log(res);
this.messagginonletti = res.success;
});
}));
}

标签菜单的值是在应用程序启动时设置的,但我不知道如何更新(刷新)它

我不知道为什么它不更新,它应该更新。您可能需要在更新数据时使用ngZone。但是当this.messagginonletti改变时,似乎唯一要改变的是标签的图标。我不建议改变标签结构,只要改变这里的图标就足够了(或者你想改变的其他东西)。所以这是你的修复:

<ion-tab-button  tab="messaggi">
<ion-icon *ngIf="this.messagginonletti > 0" name="mail-unread-outline"></ion-icon>
<ion-icon *ngIf="this.messagginonletti == 0" name="mail-outline"></ion-icon>
<ion-label>Messaggi</ion-label>
</ion-tab-button>

最新更新