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

feat: add debounce props #337

Open
wants to merge 7 commits into
base: v1
Choose a base branch
from
Open

Conversation

karlito40
Copy link

@karlito40 karlito40 commented Jan 14, 2020

Hi guys,

This merge request adds a basic debounce on scroll if needed.

Right now i'm experiencing some little perf issues on desktop (and only on desktop) when i scroll too fast to the bottom of my dynamic scroller. Everything become clunky and nearly unusable.

To be fair everything works fine if i use IdState but my use case prevents me from using it without a huge refactor. So i must put a key on my child components inside my DynamicScrollerItem which is a huge performance killer on desktop (not so much on mobile ironically).

As a workaround, i've add a debounce props that will debounce the handleScroll methods if it's not falsy. It's not optimal but it's now usable and does the job for my use case.

Feel free to merge or not.

i renamed refreshTimout to refreshTimeout

@AnastasiosF
Copy link

When the conflict will be resolved? I believe that will solve performance issues in mobiles. Scroll-event triggered multiple times when scrolling with touch event and that causes some glitches!

@karlito40
Copy link
Author

All the conflicts has been resolved 👍

@Akryum Akryum changed the base branch from master to v1 October 11, 2022 15:57
@Akryum
Copy link
Owner

Akryum commented Oct 11, 2022

It should be a throttle instead of a debounce to avoid blank content for too long while scrolling.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants