From 12bceaca33de8449d622e0d0551340c339f0c54e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felipe=20Lube=20de=20Bragan=C3=A7a?= Date: Mon, 14 Oct 2019 23:56:19 -0300 Subject: [PATCH] feat(web): support for dom node in ReactiveList's scrollTarget prop --- packages/web/src/components/result/ReactiveList.d.ts | 2 +- packages/web/src/components/result/ReactiveList.js | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/web/src/components/result/ReactiveList.d.ts b/packages/web/src/components/result/ReactiveList.d.ts index 2c43808f2a..8f301a0e81 100644 --- a/packages/web/src/components/result/ReactiveList.d.ts +++ b/packages/web/src/components/result/ReactiveList.d.ts @@ -35,7 +35,7 @@ declare namespace ReactiveListTree { onPageClick?: (...args: any[]) => any; defaultPage?: number; listClass?: string; - scrollTarget?: string; + scrollTarget?: string | Element | HTMLDocument; onData?: (...args: any[]) => any; renderNoResults?: types.title; scrollOnChange?: boolean; diff --git a/packages/web/src/components/result/ReactiveList.js b/packages/web/src/components/result/ReactiveList.js index fe4b8eea18..75087719f2 100644 --- a/packages/web/src/components/result/ReactiveList.js +++ b/packages/web/src/components/result/ReactiveList.js @@ -150,8 +150,10 @@ class ReactiveList extends Component { this.domNode = window; if (this.showInfiniteScroll) { const { scrollTarget } = this.props; - if (scrollTarget) { + if (typeof scrollTarget === 'string' || scrollTarget instanceof String) { this.domNode = document.getElementById(scrollTarget); + } else if (scrollTarget instanceof Element || scrollTarget instanceof HTMLDocument) { + this.domNode = scrollTarget; } this.domNode.addEventListener('scroll', this.scrollHandler); }