我已经有了这个工作,但我确定有更好的方法可以在Angular中执行此操作。基本上我有以下几种:使用Angular(2)routerLinkActive指令获取弯曲的路线
假设嵌套的,变形的路径,例如/logos
和/logo/:id
我有以下的标记,它的工作原理:
<li class="nav-item">
<a class="nav-link" routerLinkActive="active" links="logo" routerLink="logos">
Logos
<span routerLink="logo" hidden></span>
</a>
</li>
这将导致正确的选项卡上激活/logo/:id
,但是跨度在那里感觉很哈克和不正确的。如果路径没有变形,例如/logo
和/logo/:id
或/logos
和/logos/:id
它工作正常。我只需添加另一个路由器链接?我应该添加其他指令吗?我需要去定制?
谢谢!
前者是我如何我的路线摆出来,这个问题是我想要的路由器链接激活'/标识的两种情况'和'/ logo /:id',同时保留变形。我意识到使用儿童路线方法,或者甚至跳过变换路线名称将实现这一目的,但是变形是我所追求的。我意识到这很迂腐,但它有助于保持一致性,例如'/ logos'是一个标识列表,'/ logo /:id'是一个标识'/ logos /:id'的详细信息,但它与多对一关系不匹配。 –
Gotcha,我会尽量调整我的答案 –
谢谢。这就是我现在设置的东西,但是我遇到的问题仍然是当我看着'/ logo/'时,我的导航栏中的链接'routerLink ='/ logos''没有激活“routerLinkActive”指令,在我的示例中,该指令可以触发。我甚至尝试过使用我的Route上的'matcher'属性而不是'path'来尝试不同的变体,但是没有运气。 –