Angular2无限滚动指令问题

时间:2016-05-29 19:29:17

标签: angular angular2-routing angular2-template angular2-directives

我正在使用以下无限滚动指令:

https://github.com/orizens/angular2-infinite-scroll

但问题是当我在一个页面上使用此指令时,如果我离开该页面,滚动的事件仍然会被触发,可能是因为scroller.ts文件中的下面一行:

return this.container.addEventListener('scroll', this.handler.bind(this));

当我们离开页面时,会添加此事件侦听器但不会将其删除。

任何线索,当我们切换到另一页时,如何自动处理?

1 个答案:

答案 0 :(得分:1)

要么以声明方式添加事件处理程序

<div class="container" (scroll)="handler($event)"></div>

或您使用

ngOnDestroy() {
  this.container.removeEventListener('scroll', this.handler);
}