我有Angular 7应用程序,我想在超时后重定向到登录页面(但在URL中显示/index.html而不是/ login)。
在整个应用程序中,我不想在URL中显示相对路径,而只是在重定向所有页面时显示/index.html(由于应用程序的设计)。
所以,我为此使用skipLocationChange: true
。
app.routing.ts:
const appRoutes: Routes = [
{ path: 'login', component: LoginComponent },
{ path: 'reset-password', component: ResetPasswordComponent },
{
path: 'dashBoard',
component: DashboardComponent,
children: [
{ path: 'profile', component: ProfileComponent },
{ path: 'account', component: AccountComponent },
]
},
{ path: '**', redirectTo: 'login' },
];
我使用以下命令从登录组件重定向到ProfileComponent:
this.router.navigate(['dashBoard/profile'], { skipLocationChange: true })
在“个人资料和帐户”组件中,计时器到期后,我正在执行
this.router.navigate(['/login'], { skipLocationChange: true });
这使应用程序重定向到登录页面,但在URL中显示/ dashBoard / profile。
那么,首先,当我提到skipLocationChange:true时,为什么URL更改为/ dashBoard / profile?
然后我尝试:
this.router.navigate(['/index.html'], { replaceUrl: true });
这使应用程序重定向到登录页面,但在URL中显示/ login。
从/ dashBoard / profile重定向后,我想在URL中显示/index.html。我该怎么办?