Файл маршрутизатора используется для настройки возможных маршрутов. Я бы порекомендовал поместить фактическую маршрутизацию по умолчанию в функцию ngOnInit вашего компонента Login. Таким образом, внутри этой функции вы извлекаете значение роли из локального хранилища, а затем переходите к маршруту в зависимости от значения. Затем измените пустой путь для перенаправления на компонент входа. Затем добавьте имя пути для AdminComponent. Это может быть все, что вам подходит, но я использовал «admin» в приведенном ниже примере.
const routes: Routes = [
{ path: '', redirectTo: 'login', pathMatch: 'full' },
{ path: 'login', component: LoginComponent },
{
path: 'admin', canActivate: [AuthGuardService], component: AdminComponent,
children: [
{ path: 'dashboard', component: DashboardComponent },
{ path: 'users', loadChildren: './users/users.module#UsersModule' },
{ path: 'request', loadChildren: './request/request.module#RequestModule' },
{ path: 'android', loadChildren: './android/companylist.module#CompanylistModule' },
{ path: 'billing', loadChildren: './billing/billing.module#BillingModule' },
{ path: 'subadmin', loadChildren: './subadmin/subadmin.module#SubadminModule' },
{ path: 'createivr', component: CreateivrComponent },
{ path: 'calllog/:id', component: CalllogComponent },
{ path: 'createivr/:userid', component: CreateivrComponent },
{ path: 'editivr/:id/:userid', component: CreateivrComponent },
]
}];
Так что теперь, когда пользователь переходит на ваш сайт с пустым путем, он будет перенаправлен на компонент входа в систему. Компонент входа в систему проверит значение локального хранилища и, если у него есть доступ, перенаправит на соответствующий компонент.