Repository navigation
fix: empty result pages terminate the infinite scroll walk - #18
Merged
Merged
Conversation
The site's pagination lies on past-the-end pages: an empty result page still renders pagination.next markers (verified live — page 2 of a 1-result search returns 0 cards with 3 next markers). Trusting the marker kept hasNextPage true after the walk hit the void, so every scroll bounce at the bottom fired another guaranteed-empty fetch, even with the "已经看完啦" footer already on screen. An empty page is now always terminal: parseVideoList returns nextPage/lastPage null when it yields no cards, regardless of what the pagination markers claim. Requests were already sequential (the isFetchingNextPage guard); this ends the chain itself.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The site's pagination lies on past-the-end pages: an empty result page still renders pagination.next markers (verified live — page 2 of a 1-result search returns 0 cards with 3 next markers). Trusting the marker kept hasNextPage true after the walk hit the void, so every scroll bounce at the bottom fired another guaranteed-empty fetch, even with the "已经看完啦" footer already on screen.
An empty page is now always terminal: parseVideoList returns nextPage/lastPage null when it yields no cards, regardless of what the pagination markers claim. Requests were already sequential (the isFetchingNextPage guard); this ends the chain itself.