AngularJS 2分页返回NaN onClick

时间:2016-12-28 22:09:56

标签: angularjs angular meteor

我在这里遵循这个例子:

https://github.com/Urigo/meteor-angular2.0-socially/blob/master/manuals/views/step13.md

  

Step 13.11:添加pageChange事件绑定

并且pageChange,没有任何反应。使用控制台调试页码正在返回NaN。如果我对页码进行硬编码就没有问题,即我可以分页。 $event传递的内容为NaN(或者我猜是nullundefined

修改

代码I使用。

NG:

<pagination-controls (pageChange)="onPageChanged($event)"></pagination-controls>

https://github.com/jessejamesrichard/shortshape/blob/master/client/imports/app/parties/parties-list.component.html(17)

通话:

onPageChanged(page: number): void {
  console.log(page);
  this.curPage.next(page);
}

https://github.com/jessejamesrichard/shortshape/blob/master/client/imports/app/parties/parties-list.component.ts (99)

我认为问题与onPageChanged($event)是隔离的。 $event是错误的,或排版是一个问题,或者我完全搞砸了别的东西。或者组合。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,最终发现问题是我缺少id标签上的<tr>属性。我的html页面中有多个带有分页的表,我不得不为id标签提供<pagination-controls>,但是我也没有将其放在<tr>上。

这是我得到的:

在我的html中:

 <table>
<tbody>
    <tr *ngFor="let request of requests | 
      paginate: { itemsPerPage: 10, currentPage: p2, id: 'history' };
          let i = index">
          <!--put your <td> tags here...-->
    </tr>
</tbody>
</table>
<pagination-controls previousLabel="pre" 
nextLabel="next" (pageChange)="p2 = $event" maxSize="9" directionLinks="true" id="history"></pagination-controls>