Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement LazyListBox based on IntersectionObserver #2341

Closed
ashklianko opened this issue Dec 28, 2021 · 0 comments
Closed

Implement LazyListBox based on IntersectionObserver #2341

ashklianko opened this issue Dec 28, 2021 · 0 comments
Assignees
Labels
Improvement Suggestion for improvement

Comments

@ashklianko
Copy link
Member

ashklianko commented Dec 28, 2021

Implement IntersectionObserver for a LazyListBox.
Native JS code will eliminate lots of our error-prone code that supposed to trigger lazy load when bottom of scrollable area is reached.
Last added to the LazyListBox element will be observed to track when it is in the viewport of it's scrollable container.
Inheritors will need to provide scrollable container to be used. Ineritors will be able to override IntersectionObserver options (rootMargin, threshold etc.)
LazyListBox inheritors will need to define themselves what to do when lazy load is invoked.
If this approach is OK then can modyfy treegrid's postload (using setInterval for constant checks) with IntersectionObserver

@ashklianko ashklianko added Improvement Suggestion for improvement Refactoring Code improvements labels Dec 28, 2021
@ashklianko ashklianko self-assigned this Dec 28, 2021
@alansemenov alansemenov removed the Refactoring Code improvements label Jan 4, 2022
@alansemenov alansemenov changed the title ListBox: add inheritor class implementing IntersectionObserver for lazy loading Implement LazyListBox based on IntersectionObserver Jan 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Improvement Suggestion for improvement
Projects
None yet
Development

No branches or pull requests

2 participants