canActivateChild被多次调用

时间:2018-05-15 10:51:50

标签: angular angular-routing

在我的角色5项目中我保护"一些基于已记录用户角色的视图, 所以在我的路由模块中我有:

    path: '',
    component: AdminLayoutComponent,
    canActivate: [AuthGuard],
    canActivateChild: [RoleGuard],
    children: [
      {
        path: '',
        loadChildren: './dashboard/dashboard.module#DashboardModule',
        data: { roles: ['role.all'] }
      },
      {
        path: 'checkPoints',
        loadChildren: './check-points/check-point-list/check-point-list.module#CheckpointListModule',
        data: { roles: ['role.admin', 'role.tech', 'role.backoffice'] }
      }...

AuthGuard检查用户是否经过身份验证,然后RoleGuard检查记录的用户是否具有查看该页面的角色。 但是当我尝试导航到子路由时,我看到多次调用canActivateChild方法(2-3次)

这是正确的行为吗?

1 个答案:

答案 0 :(得分:1)

Category:(dropdown) - weddings

我认为这样可以防止2-3次。