我遇到问题。我想在一个GET
中存储多个JSON
请求的信息,我需要一些建议。我的应用程序中有两个调用,第一个调用为每个元素提供了一些值,如下所示:
//values: Number [] =[];
this._ValuesService.getValues().subscribe(
result => {
this.values= result;
},
err => console.log(err)
);
第二个GET
就是这样:
//calcs: Calcs[] = [];
this._CalcsService.getCalcs(value)
.subscribe(
res => {
this.calcs= res;
},
err => {
console.log(err);
alert('Error =C');
}
);
我希望同时为GET
CalcsService
调用Values[]
中的每个值,并将其存储在JSON
中。我考虑使用ForkJoin
的选项,但我认为这不是解决此问题的方法。有什么想法吗?
提前致谢!
答案 0 :(得分:0)
我希望你的意思是来自calcs的所有结果,而不是来自calc +值的混合结果。请尝试以下方法:
this._ValuesService.getValues()
.map(values => values.map(value => this._CalcsService.getCalcs(value)) // Create an Observable foreach value
.switchMap(obs => Observable.combineLatest(obs)) // Call the endpoint foreach value
.subscribe(result => { // Array of results from calc
console.log(result);
});