каждый вопрос, который у меня был, когда я пытался настроить свой собственный маршрутизатор.
я есть приложение, которое разделено на раздел аутентификации (InternalRootComponent) и анонимный раздел (ExternalRootComponent).
Все работает нормально, когда я перехожу на маршруты явно, но когда я иду в корень (/), я не перенаправлен. Кроме того, AccountsComponent загружается по некоторым причинам.
приложение-routing.module.ts:
export const routes: Routes = [
{
path: '',
redirectTo: 'login',
pathMatch: 'full'
},
{
path: 'login',
component: ExternalRootComponent,
children: [
{
path: '',
loadChildren: './login/login.module#LoginModule'
}
]
},
{
path: 'membership',
component: ExternalRootComponent,
children: [
{
path: '',
loadChildren: './membership/membership.module#MembershipModule'
}
]
},
{
path: 'app',
component: InternalRootComponent,
canActivate: [AuthGuard],
children: [
{
path: '',
canActivateChild: [AuthGuard],
children: [
{
path: '',
redirectTo: './dashboard',
pathMatch: 'full'
},
{
path: 'dashboard',
loadChildren: './dashboard/dashboard.module#DashboardModule'
},
{
path: 'accounts',
loadChildren: './accounts/accounts.module#AccountsModule'
},
{
path: 'users',
loadChildren: './users/users.module#UsersModule'
},
{
path: 'services',
loadChildren: './services/services.module#ServicesModule'
},
{
path: 'support',
loadChildren: './support/support.module#SupportModule'
}
]
}
]
},
{
path: '**',
component: NotFoundComponent
}
];
счета-routing.module.ts:
const routes: Routes = [
{
path: '',
component: AccountInfoComponent
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class AccountsRoutingModule {}
Чего я не понимаю, так это почему первый редирект не работает - я бы ожидал / перенаправить на / login. Вместо этого создается впечатление, что вызывается пустой маршрут в accounts-routing.module.ts.