【发布时间】:2016-10-18 10:23:30
【问题描述】:
我一直在努力解决这个问题,但我能够阅读的任何文档都无法回答我的问题。
我有一个服务直接与 API 对话并返回一个可观察的事件,在正常情况下我会订阅并使用数据做我想做的事情,但是在使用来自 restful 服务的请求的辅助服务中,我需要能够从请求中返回值。
getSomething() {
return this._restService.addRequest('object', 'method').run()
.subscribe(
res => {
res;
},
err => {
console.error(err);
}
);
}
returnSomething() {
return this.getSomething();
}
在上面的快速示例中,我想知道是否有任何方法可以在returnSomething() 中从getSomething() 返回res。如果以这种方式无法实现,还有什么替代方法?我要补充一点,_restService 非常依赖,我真的不想开始搞砸了。
【问题讨论】:
-
你在哪里使用
returnSomething()?您知道这是一个异步操作,因此您无法立即“获得”结果。您也许可以在returnSomething()中订阅(res),但我不知道这是否实用。 -
上面的示例将包含在一个服务中,并且对该方法的调用将在多个组件中,这就是为什么我只想返回
res值,因为它会节省很多一点代码。我还需要能够比较两种或多种类似方法的结果。
标签: typescript angular rxjs observable