【发布时间】:2021-01-04 08:31:45
【问题描述】:
我正在使用 ionic 5 框架来构建应用程序,如果用户在更改路由之前已经登录,我想在路由中添加条件。
app-routing.module.ts 文件:
const routes: Routes = [
{
path: '',
redirectTo: 'home',
pathMatch: 'full'
},
{
path: 'home',
loadChildren: './home/home.module#HomePageModule'
},
{
path: 'doctors',
loadChildren: () => import('./doctors/doctors.module').then(m => m.DoctorsPageModule)
},
{
path: 'dashboard',
loadChildren: () => import('./user/dashboard/dashboard.module').then(m => m.DashboardPageModule),
canLoad: [AuthGuard],
},
];
@NgModule({
imports: [
RouterModule.forRoot(routes, {preloadingStrategy: PreloadAllModules})
],
exports: [RouterModule]
})
export class AppRoutingModule {
}
我想在此处添加条件:
{
path: '',
redirectTo: 'home',
pathMatch: 'full'
},
如果用户已经签名,将 redirectTo: 'home' 更改为 redirectTo: 'dashboard' 我该怎么做?
注意:我使用
AuthGuard来阻止用户登录某些 溃败
【问题讨论】:
-
您是否管理任何本地存储以检查用户是否已登录?
-
@RohitTagadiya 是的,我做到了。我用
AuthGuard来检查它。 -
然后登录后如果你得到令牌,那么你可以将它存储在本地存储中,当你进入
home页面时,检查令牌是否存储在本地存储然后重定向到dashboard否则,需要登录...