私は関数getNews()
を持っています。これは基本的にangularのhttp.get要求を返します。リクエストの結果はIdの配列です。私はこの配列を繰り返して、別のhttp.getリクエスト(関数getItem(id)
)を実行して、サーバーから受信した単一のIDのオブジェクトを返します。RxJS観測可能な戻り配列、各配列の繰り返しで別の関数を実行
私はそうのようにそれを使用して試してみた:明らかに
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の配列全体として渡されます。
この質問にご参加いただき、ありがとうございます。
に相当します。あなたが投稿したコードの最初の部分に、ちょっとした誤字があります。 '.map(res => res.json())'の必要はありません。どうもありがとうございました。 – gregor
あなたは正しい@greorです。あまり注意を払わずにコピー&ペーストしました;) –