angular – 如果无法激活其关联的路由,请隐藏routerLink?

前端之家收集整理的这篇文章主要介绍了angular – 如果无法激活其关联的路由,请隐藏routerLink?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有:

>与routerLinks的链接
>指向具有canActivate逻辑的Routes
> canActivateLogic基于目标组件和用户权限授权或不授权

我想隐藏无法激活的routerLinks的链接.

是否有一些很好的方法可以隐藏无法激活的routerLink?

现在你要说像’分享canActivate逻辑’那样做:

<a [hidden]="callThatCanActivateLogic()" [routerLink]="['/brand']"

问题是,这个canActivateLogic依赖于组件和权限,因为组件解析应该委托给路由而不是嵌入到链接中,因此会被错误地设计为以下内容

<a [hidden]="callThatCanActivateLogic(TheComponentAtTheEndTargettedByTheRoute,IAmInThatContext)" [routerLink]="['/brand']"

幸运的是,有一个解决方案,提供routerLink和它的路由之间的链接canActivate

猜你在找的Angularjs相关文章