我在app.component.html
中设置了导航,我想在该模板中使用*ngIf
。但是,由于ionViewWillEnter
之类的生命周期钩子在app.component.ts
中不起作用,因此如何在每次侧面导航弹出时都触发触发调用?
我只是想获得一个红点以显示数组中是否有notifications
app.component.html
...
<ion-list>
<ion-menu-toggle auto-hide="false" *ngFor="let p of appPages">
<ion-item [routerDirection]="'root'" [routerLink]="[p.url]">
<ion-icon slot="start" [name]="p.icon"></ion-icon>
=====>HERE===><div class="red-dot" *ngIf="p.title == 'Home' && notifications.length > 0"></div>
<ion-label>
{{p.title}}
</ion-label>
</ion-item>
</ion-menu-toggle>
</ion-list>
</ion-content>
</ion-menu>
<ion-router-outlet main></ion-router-outlet>
...
app.component.ts
...
initializeApp() {
const parseQueryString = (queryString) => {
const query = <any>{};
for (let param of queryString.split('&')) {
const pair = param.split('=');
query[pair[0]] = pair[1];
}
return query;
};
this.platform.ready().then(() => {
this.statusBar.styleDefault();
this.splashScreen.hide();
this.deepLinks.route({
...
我要添加到侧面导航逻辑中的内容
const newData = await this.api.listModel('Notification', {
page: this.page
});
this.notifications = this.notifications.concat(newData);
this.notifications = _.filter(this.notifications, { isActioned: false }
答案 0 :(得分:0)
据我了解,这是相同的组件。每当通知数组更改时,您都可以尝试调用detectChanges()。此处更多信息:https://angular.io/api/core/ChangeDetectorRef
如果这不是相同的组件,则可以将Rxjs中的service和Observables用作代理。