У меня вопрос по маршрутизации Angular 5.
Если я объявлю маршруты, подобные приведенным ниже, route guard
вызывается каждый раз, когда я направляю к одному из компонентов через routerLink
в html.
const routes: Route[] = [
{ path: 'comp1', component: Comp1Component, canActivate: [AuthGuard]},
{ path: 'comp2', component: Comp2Component, canActivate: [AuthGuard]},
{ path: '', component: HomeComponent, canActivate: [AuthGuard]},
]
Но если я объявлю это с маршрутом componentless
, охранник вызывается только при запуске приложения. И когда я переключаю маршруты в html, гвардия больше не вызывается.
const routes: Route[] = [
{ path: '', canActivate: [AuthGuard], children: [
{ path: 'comp1', component: Comp1Component},
{ path: 'comp2', component: Comp2Component}
]}
Почему защита маршрута в моем сценарии с родительским маршрутом без компонентов не вызывается каждый раз, когда выполняется маршрут к компоненту?