【发布时间】:2016-06-23 20:14:53
【问题描述】:
我有一个函数getNews(),它基本上返回了angular的http.get请求。请求的结果是 ID 的数组。我想遍历我得到的这个数组并运行另一个 http.get 请求(函数getItem(id)),然后它将返回从服务器接收的单个 Id 的对象。
我试过这样使用它:
getLatest() {
return this.http.get('all_news_url')
.map(res => res.json())
// I even tried creating Observable from array and get only 5 elements
//.map(res => Observable.from(res.json()))
//.take(5)
.map((data) => this.getItem(data))
.subscribe(
data => {
console.log(data);
}
)
}
getItem(itemId: any): Observable<any> {
console.log('item id', itemId);
return this.http.get(this.generateUrl(`item/${itemId}`))
.map(res => res.json());
}
显然,这是行不通的。 getItem() 函数的参数总是作为整个 ID 数组传递。
感谢大家参与这个问题。
【问题讨论】:
标签: javascript angularjs rxjs observable