google.com
это домашняя страница.Мне нужны два разных маршрута для домашней страницы.Первый маршрут работает, когда пользователь не вошел в систему (Auth) , а второй маршрут работает, когда пользователь вошел в систему (панель инструментов) .
Сложная часть - , когда страницы авторизации и панели инструментов работают на одной домашней странице, а не на разных URL.
Примечание: Оба модуля состоят из нескольких компонентов.В Auth (логин - регистрация - сброс) компонентов, а в Dashboard (индекс - пользователи - сообщения) компонентов.
const routes: Routes = [
{
path: 'index',
loadChildren: './modules/index/index.module#IndexModule'
},
{
path: 'error',
loadChildren: './modules/error/error.module#ErrorModule'
},
// Fallback when no prior routes is matched
{ path: '**', redirectTo: 'not-found', pathMatch: 'full' }
];
@NgModule({
imports: [RouterModule.forRoot(routes, { useHash: false })],
exports: [RouterModule],
providers: []
})
export class AppRoutingModule { }
const routes: Routes = [
{
path: '',
children: [
{
path: '',
loadChildren: './modules/home/home.module#HomeModule',
canLoad: [AuthGuard],
},
{
path: 'auth',
loadChildren: './modules/auth/auth.module#AuthModule',
canLoad: [NoAuthGuard]
},
]
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class IndexRoutingModule { }
const routes: Routes = [
{
path: '',
component: HomeLayoutComponent,
pathMatch: 'full',
children: [
{
path: '',
redirectTo: 'dashboard',
pathMatch: 'full'
},
{
path: 'dashboard',
component: DashboardComponent,
data: { title: 'Dashboard' }
},
]
},
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class HomeRoutingModule { }
const routes: Routes = [
{
path: '',
component: AuthLayoutComponent,
pathMatch: 'full',
children: [
{
path: '',
redirectTo: 'login',
pathMatch: 'full'
},
{
path: 'login',
component: LoginComponent,
data: { title: 'Sign In To Admin' }
},
]
}
];
@NgModule({
imports: [
RouterModule.forChild(routes)
],
exports: [
RouterModule
]
})
export class AuthRoutingModule { }
Проблема только в маршрутизации, а не в охране и не в чем-либо.