我想使用observable在Angular2中进行多次http调用.每个可观察量取决于先前的可观察量.如果我想返回内部observable,那么我可以在父组件中订阅它,怎么能这样做呢?
这是我尝试过的,但我无法订阅父组件中的observable.
子组件:
observablesFn(){ observable1().subscribe(data1 => { observable2().subcribe(data2 => { //I want to return this observable (before subscription b/c I want to subscribe in the parent component) return observable3(); }) } }
你的问题很难理解,因为你没有给出太多的上下文,但听起来你希望得到observable3()的结果从observablesFn()返回.现有的return语句是从嵌套的内部匿名函数返回的,而不是最外层的作用域.我认为你希望在这些方面做更多的事情.
原文链接:https://www.f2er.com/angularjs/240393.htmlobservablesFn(){ return observable1().map(data1 => { return observable2(data1).map(data2 => { return observable3(data1,data2); }); }); }
这将从observablesFn()返回,而不是它的嵌套内部函数.
有必要使用.map而不是.subscribe,因为它返回一个可观察的,而不是订阅.