Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Fix scrollState value;
In getScroll funtion, the start value will always be zero if start < 0, although the start is less than size(window.innerHeight if vertical), the problem is:
if there's a virtual list below the viewport, then scroll the virtual list to the middle of the viewport, you will see there're blank rows(only rendered buffer items), because the start value is still zero, so positionDiff will be zero, then updateVisibleItems function will be return, blank rows appeared.
so i changed the condition, don't set start to zero if bounds.top(if vertical) is great than 0 and less than size, that means the scroll list is entering the viewport, need to recalculate the startIndex and endIndex, so that blank rows will be disappeared and render real items.
Reproduction
Demo site