angular 9, почему canActivateChild запускается до завершения canActivate?

в моей программе у меня есть функция в canActivateChild, которая должна выполняться после завершения canActivate, но дочерний компонент загружается до завершения canActivate родительского, почему?

      my routing-module:
const routes: Routes = [

    {
    path: '',
    component: MainComponent,
    canActivate: [LoadDataGuard, ConfigureJsGuard],
    canActivateChild: [EnterChildGuard],
    canDeactivate: [CleanupJsGuard],
    data: {
        modelService: ModelService,
     
    } ,
    children: [
        {
            component: ChildComponent,
         .......

1 ответ

можете добавить canActivateChildк пустому пути дочернего элемента основного маршрута

как

      {
path: '',
component: MainComponent,
canActivate: [LoadDataGuard, ConfigureJsGuard],
canDeactivate: [CleanupJsGuard],
data: {
    modelService: ModelService,
 
} ,
children: [
    path: '',
    canActivateChild: [EnterChildGuard],
    children: [
    {
        component: ChildComponent,
      .......
      },
    ]
Другие вопросы по тегам