如何在角度2中更新模型来显示更新的数据?

时间:2017-06-07 08:47:51

标签: angular pagination

我目前正在以角度2进行分页。我正在使用 ng2-pagination 来实现我的目的。到目前为止我所做的是,我已经成功地通过我的api收到了数据。但是当我点击下一页按钮时,通过再次呼叫该页面的api获取下一页的数据。但是出现问题,收到的数据在我的视图中没有更新。任何机构都可以告诉我如何使用新数据更新现有视图。我的 pagechanged 功能是,

pageChanged(event)
{
// alert(event)
this.p=event;
    this.httpService.getAllLaptops(event).subscribe(
    data => {
      const myArray = [];


      for (let key in data) {
        myArray.push(data[key]);

      }

      this.GetAllLaptop = myArray;

    }

  );

}

和我的查看模板

  <ul>
      <li *ngFor="let item of  GetAllLaptop[2] | paginate: { itemsPerPage: 10, currentPage:p,totalItems:GetAllLaptop[1] }"> {{item.SNR_Title}} </li>
    </ul>
     <pagination-controls (pageChange)="pageChanged($event)"

     directionLinks="true"
                      autoHide="true"
                      previousLabel="Previous"
                      nextLabel="Next"
                      screenReaderPaginationLabel="Pagination"></pagination-controls>

在最初通话时,我收到数据并在视图中显示。但在页面更改事件中,为新页面收到的数据但视图未更新。怎么能更新这个视图? 任何帮助或建议都非常感谢。

1 个答案:

答案 0 :(得分:0)

解决。这是我自己的错误。我刚刚用过

this.ref.detectChanges();  
  this.ref.reattach();

我的api又出现了另一个问题,即每次通话都会返回相同的数据。