Angular 基于路由器链接是否传递给组件,动态地将routerLink添加到锚定标记
我试图根据是否将Angular 基于路由器链接是否传递给组件,动态地将routerLink添加到锚定标记,angular,Angular,我试图根据是否将routerLink传递给组件本身,动态地将routerLink添加到锚定标记中 这是我目前拥有的代码: [attr.routerLink]="router ? router : null" 当传递了routerLink但没有传递href时,生成的标记如下所示: <a _ngcontent-hlo-122="" routerlink="/myRoute">My Link</a> 我的链接 我已经尝试了很多方法,但我似乎永远都无法让它发挥作用。有人有解
routerLink
传递给组件本身,动态地将routerLink
添加到锚定标记中
这是我目前拥有的代码:
[attr.routerLink]="router ? router : null"
当传递了routerLink
但没有传递href
时,生成的标记如下所示:
<a _ngcontent-hlo-122="" routerlink="/myRoute">My Link</a>
我的链接
我已经尝试了很多方法,但我似乎永远都无法让它发挥作用。有人有解决这个问题的可靠办法吗?终于找到了答案
解决方案:
<a [routerLink]="router ? [router] : []>My Router Link</a>
routerLink是angular directive not element属性。我知道,我也尝试过使用三元运算符,但当传递给组件的routerLink为null、未定义或无效时,没有一个值可以放在另一端,而不会引发错误[attr.routerLink]=“路由器?路由器:null”
AFAIK您不能有条件地应用routerLink
。我用@Gunter的答案解决了这个问题