当构造一个包含从 Observable 解析的值的数据对象时,我不知道如何返回 Observable<Response>
.
我试过使用 forkJoin()
, 先解析值,然后 subscribe
给它,并返回 this.http.post()...
称呼。但是,这使得无法订阅函数本身 fetchData().subscribe( ... )
.我显然遗漏了一些东西。
那么,我该如何构造一个数据对象,其中包含已解析的 Observable
值,然后返回 Observable<Response>
对象?
// Simplified example
fetchData() {
// Construct the data
var data = {
v1 : this.getValueFromObservable1(),
v2 : this.getValueFromObservable2()
};
// Make the call, return the Observable<Response> object
return this.http
.post( 'api/authorization', JSON.stringify(data) );
}
最佳答案
这应该做你想做的:
fetchData() {
return this.getValueFromObservable1()
.mergeMap(v1 =>
this.getValueFromObservable2()
.map(v2 => { v1: v1, v2: v2})
);
}
关于http - 如何从 Observables 值构造数据,并在 HTTP 调用后返回 Observable<Response>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40848106/