2017-05-24 11 views
0

から数える:私はこの呼び出しを行うとページネーション - ページマイサービスコールは、この形式でデータを返しているサービス

items: [,...] 
page: 1 
pageSize: 30 
totalCount: 3445 

、私は、エンティティタイプに「アイテム」配列内のデータをマッピングしています。

各ページに30個のレコードを表示するために改ページを追加しています。別のコールをせずに「totalCount」を取得して返すにはどうすればよいですか?私は「xxページのxページを表示しています」と表示しようとしています。

これを行う最善の方法は何ですか?

また、以下の形式でURLパラメータを渡したいと思っていますが、私のためには機能しません。私は間違って何をしていますか?

const params: URLSearchParams = new URLSearchParams(); 
     if (pageNumber) { 
      params.set('page', pageNumber.toString()); 
     } 

答えて

1

あなたはそれ以下のようなサービス側の変数とアクセス権を持つことができます。

public totalCount:any;  

getItems(pageNumber?: number): Observable<Item[]> { 

    return this.http 
     .get(this.itemsUrl + '?page=' + pageNumber) 
     .map((res) => { 
      const body = res.json(); 
      this.totalCount = body.totalCount; 
      return this.mapToItemList(body.items || {}); 
     }) 
     .catch(this.handleError); 
} 

コンポーネント側:働い

this.service.totalCount 
+0

を!ありがとうございました。 – Jay

関連する問題