Angular 2:在条件相同的路线上加载不同的组件?

时间:2017-11-30 06:24:22

标签: angular angular2-routing angular-routing angular4-router

有没有办法让我可以在同一条路线上加载不同的组件(在我的情况下是根路由)。

基本上我想查看用户是否已登录,如果他已登录,将加载仪表板组件,如果他未登录,则将加载主组件

而且只是为了清楚地说明这个问题,我不想使用身份验证警卫将用户重定向到不同的路线。我想在同一条路线上加载不同的组件

1 个答案:

答案 0 :(得分:2)

如果你不想使用警卫,这就是你在问题中提到的, 你可以简单地使用ngIf。

示例

<div *ngIf="this.authService.hasPermissionForDashboard()">
 <app-dashboard><app-dashboard>
</div>
<div *ngIf="this.authService.hasNotPermissionForDashboard()">
 <app-home><app-home>
</div>