当我重新加载/刷新我的应用程序时,会显示菜单栏中的路线,并且所有项目都设置为active
. 我已为路线配置:
export const routes: Routes = [
{
path: '', pathMatch: 'full', redirectTo: 'home',
data: { title: undefined }
},
{
path: 'login', component: LoginComponent,
data: { title: 'Login' }
},
{
path: 'home', component: MainComponent,
data: { title: 'Home' }
},
{
path: 'search', component: SearchListComponent,
data: { title: 'Search'}
},
];
在我的菜单栏中,我将代码简化为以下内容:
<div class="container">
<a routerLinkActive="is-active"
routerLink="/login">Login</a> |
<a routerLinkActive="is-active"
routerLink="/search">MySearch</a> |
<a routerLinkActive="is-active"
routerLink="/home">MyHome</a> |
</div>
<div >
<div *ngFor="let route of router.config">
<a routerLinkActive="is-active"
[routerLink]="userName? ('/'+route.path ): '/' ">{{route.data.title}}... {{userName? ('/'+route.path ): '/' }} </a> |
</div>
</div>
其中包括我的路线两次 - 几乎相同 - 除了第二个代码动态生成项目。第一个在刷新后正确选择项目,而第二个失败。
根据文档 routerLink
可以用作字符串
任何人都可以解释为什么第二个失败?
编辑: 按要求提供图片
但是我选择了另一个链接后内容还是一样!比所有链接都正确呈现!
编辑2
我能够重现该错误。主要问题是评估routerlink
太晚了,我遇到了同样的问题,就像已经报告的错误一样。
我当前的解决方法:最初设置userName
:-/