UserDataService 服务中有一个 getUser 函数,我在其中调用 tokens 函数,获取令牌并将其传递给另一个 getUser 函数,从那里我通过他的 id 获取用户。
getUser(id: number) {
return this.sharedDataService.tokens.subscribe(
result=> {
return this.userService.getUser(result, id).subscribe(
(resultService: DataResponse<User>) => {
if (resultService.status === StatusType.SUCCESSFUL) {
return resultService.data;
} else {
return null;
}
});
});
}
调用此函数时如何获取用户对象?这样的代码将不起作用。
let user = this.userDataService.getUser(1);
从这些函数传递对象的正确方法是什么?可以按事件转移,但在这种情况下不是很方便。也许您可以订阅 getUser 功能?
为了使用顺序请求,您应该使用 RXJS 运算符,例如 switchMap。你可以在这里和这里阅读更多