【发布时间】:2017-05-15 12:15:37
【问题描述】:
当我访问我的页面时没有任何子网址(又名路径:'')我收到以下错误:
Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'login'
但如果我点击一个链接,它会将我重定向到/(outside:login),它会按预期工作。
在路径 '' 上时如何应用此功能?
当我在没有 url 段时,我点击链接使其工作:
<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;
}
});
如何在不使用 url 段/路径时使其自动转到登录模块?
【问题讨论】:
-
我认为您需要 redirectTo 路径
redirectTo : '/login'的起始 / -
@JayChase 没有区别。
标签: javascript angular angular2-routing