查看从以下authguard
位置调用的内容canactivate
:
@Injectable()
export class AuthGuard implements CanActivate {
constructor(private loginServicePOST:LoginService, private router:Router) { }
canActivate(next:ActivatedRouteSnapshot, state:RouterStateSnapshot) {
return this.loginServicePOST({...}).map(e => {
if (e) {
return true;
}
}).catch(() => {
return Observable.of(false);
});
}
}
此代码正在运行,并向服务器调用 http 请求。
问题 :
这是一个冷的可观察.subscribe
的,没有人愿意接受它——所以我不明白这个post
请求是如何被调用的以及为什么。
subscribe
必须写恕我直言。
注意我已经
知道canactivate
可以返回bool
//Promise<bool>
Observable<bool>