当我访问我的页面而没有任何子网址(又名路径:'')时,我收到以下错误:
Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'login'
但是,如果我点击一个链接,它会将我重定向到/(outside:login)
,它会按预期工作。
如何在路径''
上使用此选项?
链接我点击以使其在没有网址段时生效:
<a [routerLink]="['/', {outlets: {'outside': 'login'}}]" routerLinkActive="active">Login</a>
路由器:
RouterModule.forRoot([
{
path : 'bank',
component: BankComponent,
outlet: 'regular'
},
{
path: '',
redirectTo : 'login' ,
pathMatch: 'full',
},
{
path: 'login',
component: LoginhandlerComponent,
outlet: 'outside'
},
])
显示:
<div *ngIf="user.username">
<a [routerLink]="['/', {outlets: {'regular': 'druglab'}}]" routerLinkActive="active">Druglab</a>
<div>
<router-outlet name="regular"></router-outlet>
</div>
</div>
<div *ngIf="loggedin == false">
<a [routerLink]="['/', {outlets: {'outside': 'login'}}]" routerLinkActive="active">login</a>
// other things
<div>
<router-outlet name="outside"></router-outlet>
</div>
</div>
app.component.ts for /
loggedin = false;
user = {};
this.CoreService.reloadUserData().subscribe((value) => {
if (value.user) {
this.user = value.user;
this.loggedin = true;
}
});
如何在不使用网址段/路径时自动转到登录模块?
答案 0 :(得分:0)
看起来语法有点改变了。我有一个重定向工作到这样的命名出口:
{
path: '',
redirectTo: '/(outside:login)',
pathMatch: 'full'
},
{
path: 'login',
component: LoginhandlerComponent,
outlet: 'outside'
},