如何仅显示我可以在Angular中激活的模块的链接?

时间:2017-06-06 11:31:24

标签: angular angular-router-guards

我使用CanActivate的路由器和守卫。它工作正常,但我只需要在我的菜单中显示"可激活"链接。

路由器有任何选项" isActivable"?

示例:

<ul>
 <li routerLink="home" routerLinkActive="active" *ngIf="isActivable">Home</li>
<ul>

1 个答案:

答案 0 :(得分:0)

您可以在Component的构造函数中注入Guard。 像这样:

constructor(private yourGuard: YourGuard){}

并在模板中:

<ul>
 <li routerLink="home" routerLinkActive="active" *ngIf="yourGuard.canActivate()">Home</li>
<ul>

当然你必须在路由器中指定你的守卫......