Angular 2 componentes diferentes con la misma ruta
Tengo una aplicación que necesita separar los componentes de usuarios autenticados e invitados. Pero necesito que ambos componentes se carguen por la ruta '/'. escribí
{
path: 'desktop',
loadChildren: 'app/member/member.module#MemberModule',
canActivate: [LoggedInGuard],
},
{
path: '',
loadChildren: 'app/guest/guest.module#GuestModule',
canActivate: [GuestGuard],
},
Y funciona. Pero, ¿cómo hacer que ambos componentes se carguen por la misma url? Había intentado escribirpath: ''
para la ruta del módulo del miembro, pero no se realiza la segunda regla del enrutador. Aquí hay código de guardias:
LoggedInGuard:
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
if(this.sessionService.isLoggedIn()) {
return true;
} else {
return false;
}
}
GuestGuard:
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
if(!this.sessionService.isLoggedIn()) {
return true;
} else {
return false;
}
}
Aquí hay un saqueador:http://embed.plnkr.co/VaiibEVGE79QU8toWSg6/
¿Cómo debo hacerlo correctamente? Gracias