与Callback成角度的EventListener在firefox中产生错误ERROR ReferenceError:“事件未定义”

时间:2019-07-08 09:51:09

标签: event-handling addeventlistener infinite-scroll angular8

我想在窗口滚动事件上加载数据 这是我的代码:

 private scrollChangeCallback: () => void;

  ngOnInit() {
    this.scrollChangeCallback = () => this.handleWindowScroll(event);
    window.addEventListener('scroll', this.scrollChangeCallback, true);
 }

  handleWindowScroll = (event): void => {
    const total = this.sites.length;
    const page = this.getPageForIndex(total);
     let bottomPosition = event.srcElement.scrollTop + window.innerHeight + 25;
     let scrolledHeight = event.srcElement.scrollHeight;
     if (this.sites != null && bottomPosition > scrolledHeight && !this.theEnd && total >= this.pageSize) {
      this.siteRepositoryService.loadSites(this.searchTerm, page);
       this.subscribeOnScroll();
   }
 }

在Firefox上出现错误ReferenceError:未定义事件。 我已经尝试了所有可能的解决方案,并为此花了足够的时间,但是有人无法帮助我,这是行不通的?

1 个答案:

答案 0 :(得分:0)

我已经通过两种方法解决了该错误:

  1. 更新firefox
  2. 用户ngAfterViewInit而不是ngOnInit