2016-07-11 3 views
0

アムにパラメータを送信するには、次のどのようにバックエンド(API)からデータを取得し、このようngForを使用してそれを表示するHTTP GETリクエスト

<li *ngFor="let event of events"> 
    {{event.name}} 
    {{event.city}} 
</li> 

私の結果はこのようなものです。

wedding 
    city 1 

    graduation 
    city 2 

今私は、ユーザーがイベントをクリックすると、私はバックエンドにビューに表示されませんでしたevent_idを渡すことでこれを実現したいときにイベントの詳細情報を取得したいです。私のコンポーネントで

<li *ngFor="let event of events" (click)="moreDetails(event)"> 
     {{event.name}} 
     {{event.city}} 
    </li> 

そして:私はあなたのイベントはIDを持っていると仮定し、事前

+0

apiはidパラメータをどのように想定していますか? URL(http:// someurl/id)や同様のURLパラメータ(http:// someurl?id = someid)の別のパスと同様に、 –

答えて

0

moreDetails(ev){ 
    // 
    this._http.get(this.url + event_id) 
     .map((res:Response) => res.json()) 
     .subscribe(
      data => this.getEventData = data, 
      error =>this.logError(error), 
      () => console.log('get request completed sucesfully') 
     ); 
} 

おかげで、ので、あなたのイベントIDはev.id

moreDetails(ev){ 
    // 
    this._http.get(this.url + ev.id) 
     .map((res:Response) => res.json()) 
     .subscribe(
      data => this.getEventData = data, 
      error =>this.logError(error), 
      () => console.log('get request completed sucesfully') 
     ); 
} 
0

だけで合格となりますあなたは一意のキー(id)をurlに追加することで(または、それにunique_idで文字列を連結することができます)l -

moreDetails(ev){ 
    let url = this.url+event.id+'/'; 
    this._http.get(url) 
     //...other functionality 
} 
関連する問題