【发布时间】:2018-09-18 07:02:44
【问题描述】:
我提供了一个运行良好的简单路由示例。唯一的问题是 routerLinkActive 将类 'baboossa' 添加到任何活动的链接。当我以“关于”或“窗口”的形式从家转到其他链接时,链接变为橙色(由于 baboossa 类),但我仍然可以看到家也是橙色的。为什么现在我有 2 个链接,其中包含来自 routerLinkActive 的添加类,并且类没有从家中删除?
app.component.html
<ul>
<li><a [routerLink]="''" routerLinkActive="baboossa">Home</a></li>
<li><a [routerLink]="'/about'" routerLinkActive="baboossa">About</a></li>
<li><a [routerLink]="'/window'" routerLinkActive="baboossa">Window</a></li>
</ul>
<router-outlet></router-outlet>
app.module.ts
import { RouterModule } from '@angular/router';
imports: [
RouterModule.forRoot([
{path:'', component: HomeComponent},
{path:'about', component: AboutComponent},
{path:'window', component:WindowComponent}
])
]
styles.css
.baboossa {background:orange;}
结果:
有人可以指出为什么我在除 baseone(home)之外的其他活动链接上获得 2 个橙色背景的问题吗?
【问题讨论】:
-
{path:'', component: HomeComponent}应该是{path:'', component: HomeComponent, pathMatch: 'full' } -
试过了,没用。结果相同。
-
将
{path:'', component: HomeComponent}更改为{path:'home', component: HomeComponent} -
感谢@AbhishekEkaanth - 这行得通。我用这个和第一个默认的空白路由再创建了一行——这很好用。
标签: javascript angular angular-routing