在Angular 2中,如果我在“文章”功能模块中设置了如此设置的导航栏:
<li>
<a routerLinkActive="active" routerLink="current">Current</a>
</li>
<li>
<a routerLinkActive="active" routerLink="future">Future</a>
</li>
然后当我导航到/ articles / current或/ articles / future时,设置正确的routerLinkActive类 .
如果url是/ articles / article-slug,如何将routerlinkActive设置为我的“Future”链接?
即;即使我在article-slug(这是DetailHomeComponent)中,我希望文本'Future'与类'active'一起出现
我没有显示CurrentComponent,但它包含一个包含如下路由的项目列表:
<a [routerLink]="['/articles', article.slug]">
这些是我的路线:
path: '',
component: MenuComponent,
children: [
{
path: '', redirectTo: 'current', pathMatch: "full"
},
{
path: 'current', component: CurrentComponent,
},
{
path: 'future', component: FutureComponent,
},
{
path: ':slug',
component: DetailHomeComponent,
}
]
2 回答
使用ngClass并订阅激活的路由并为所需的路由设置变量,我们可以实现这一目标 .
在TS: -
您可以使用ngClass执行此操作:
在
DetailHomeComponent
和FutureComponent
:MyService是某些服务,您可以使用它来传达两个组件 . 作为替代方案,您可以使用路由器来了解当前激活的路由 .