Tengo un AuthGuard (utilizado para enrutamiento) que implementa CanActivate .
canActivate() {
return this.loginService.isLoggedIn();
}
Mi problema es que el resultado de CanActivate depende de un http-get-result; el LoginService devuelve un Observable .
isLoggedIn():Observable<boolean> {
return this.http.get(ApiResources.LOGON).map(response => response.ok);
}
¿Cómo puedo unirlos? ¿Hacer que CanActivate dependa de un estado de backend?
# # # # # #
EDITAR: Tenga en cuenta que esta pregunta es de 2016: se ha utilizado una etapa muy temprana de angular / enrutador.