Problem with returning value in asynchronous http request.
How to wait for subscribe?
canActivate(
    route: ActivatedRouteSnapshot,
    state: RouterStateSnapshot
  ) {
    if (this.auth.currentUser) {
      return true;
    } else {
      this.auth.getUser()
        .subscribe(resp => {
          if (this.auth.currentUser) {
            return true;
          } else {
            this.router.navigate(['login'], {
              queryParams: {
                returnUrl: state.url
              }
            });
            return false;
          }
        })
    }
  }
No result is returned when refreshing page and I m redirect to main page.
 
    