2016-08-22 4 views
0

私は写真について私にいくつかのデータを返すAPIを使用していますが、私はfavorite: booleanと呼ばれる応答にフラグを追加したいので、写真がお気に入りかどうかを簡単に管理できます。APIレスポンスを簡単に消費する方法ですが、レスポンスにいくつかの追加フラグを追加する方法はありますか?

{ 
    "photos": [ 
    { "id": 1001, "url": "site.com/img/1001" }, 
    { "id": 1002, "url": "site.com/img/1002" } 
    ] 
} 

オブジェクト私はこのようなルックスで動作するようにfavoriteフラグを追加する方法がある場合、私は疑問に思って:

APIからバニラの応答は次のようなもの(ただし、はるかに簡単に)見えます:ここでは

{ 
    "photos": [ 
    { "id": 1001, "url": "site.com/img/1001", "favorite": false }, 
    { "id": 1002, "url": "site.com/img/1002", "favorite": false } 
    ] 
} 

は、私はAPIからの応答を取得する私のコードです:

getRecentPhotos(): Observable<any> { 
    let photos = this.http 
     .get(this.getRecentPhotosUrl) 
     .map((res: Response) => { 
     return res.json(); 
     }) 
     .catch(this.handleError); 
    return photos; 
    } 

その機能から戻ってくる応答にfavoriteフラグを追加することはできますか?あなたは、コードのほとんどを持っている

おかげ

答えて

2

は、あなただけの

.map((res: Response) => { 
    let _result = res.json(); 
    _result = _result.map(_x => { 
      _x.favorite = false; 
      return _x; 
    }) 
    return _result ; 
    }) 

は、この情報がお役に立てば幸い、マッパーでfavoriteフラグを追加する必要があります!

+0

nice!ありがとうございました。そして、応答が実際にネストされているケースがあればどうでしょうか?私が使用しているAPIには、{{id: "場所"、結果:[]}、{id: "場所"、結果[]}]のような場所のものもあります。そのような場合に同じお気に入りのタグを追加するのはどうですか?そこに何か問題があるかどうか不思議です。 – user6701863

+0

それはあなたが正しいプロパティを取っていることとヌルチェックを適用していることを確認する必要があります... –

+0

こんにちはMadhu。私はいくつかの問題を抱えています:(あなたが上で述べた関数内に別のマップを書き込もうとしましたが、値が配列であるキーがあるので正しいのかどうかはわかりません。 – user6701863

関連する問題