1

查看从以下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>

4

1 回答 1

1

路由器正在订阅canActivate调用返回的可观察对象返回的可观察对象loginService(...).map(...)

于 2017-12-11T12:51:17.843 回答