我有一个场景,根据我需要获得侧边菜单的用户类型。我只有在我们第一次启动应用程序时才能实现这一点。即使用户类型更改侧面菜单也会保持不变。任何人都可以建议解决这个问题吗?
答案 0 :(得分:1)
所以你的问题不是最清楚的问题,在下一个问题中你应该添加你的代码。
据我所知,您有多种用户类型,并希望为每种用户提供特定的菜单。
您可以在app.component.html
<ion-list *ngIf="user.role = 'admin'">
<!-- admin menu -->
</ion-list>
<ion-list *ngIf="user.role = 'default'">
<!-- default menu -->
</ion-list>
甚至可以使其特定于项目
<ion-list>
<ion-item>Home</ion-item> <!-- all users -->
<ion-item *ngIf="user.role = 'admin'">Analytics</ion-item> <!-- admin only -->
</ion-list>
现在我们需要跟踪用户角色本身。
import { Events } from 'ionic-angular';
....
export class AppComponent {
user: any = {role: 'default'}; //declare it or do something smarter with the menu
constructor(private events: Events) {
this.events.subscribe('user:changed', user => {
// will update the user and immediately change menu accordingly
this.user = user;
});
}
}
然后在你的登录功能中:
login() {
let user = this.myApi.login(this.username, this.encryptedPass);
// will trigger the function from app.component.ts
this.events.publish('user:changed', user);
}
有用的链接: