我有这些路线:
{
path: 'admin',
canLoad: [AuthGuard, AccountGuard],
loadChildren: () =>
import('./features/admin/admin.module').then(m => m.AdminModule),
data: { preload: false }
},
{
path: 'auth',
loadChildren: () =>
import('./features/auth/auth.module').then(m => m.AuthModule),
data: { preload: false }
}
在登录时,两者都被触发,但是当在管理区域中我注销删除身份验证和帐户状态时,如果我再次登录而不刷新仅触发第一个,则重定向到身份验证路由。我试过使用
onSameUrlNavigation: 'reload'
runGuardsAndResolvers: 'always'
但我仍然有同样的行为。
有任何想法吗?
注意 ,我也尝试在 AccountGuard 中放置一个简单的 console.log,例如
canLoad(): Observable<boolean> {console.log('Account)}
但在第二次登录时,我在开发工具中看不到任何消息