-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Fix issue where an empty array returned from fetchMore
would rerender with an empty list
#11706
Conversation
🦋 Changeset detectedLatest commit: e43dbd9 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
size-limit report 📦
|
@@ -4795,6 +4795,15 @@ describe("refetch", () => { | |||
describe("fetchMore", () => { | |||
it("re-suspends when calling `fetchMore` with different variables", async () => { | |||
const { query, link } = setupPaginatedCase(); | |||
const cache = new InMemoryCache({ | |||
typePolicies: { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Turns out these type policies were needed all along in some of these tests. The bug that this PR fixes masked this issue which is why these wasn't originally part of these tests.
/release:pr |
A new release has been made for this PR. You can install it with:
|
✅ Deploy Preview for apollo-client-docs ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The type policies in uBQ tests! Makes a lot of sense now :) LGTM 🚀
Fixes #11642
When using
fetchMore
with any suspense hook, an empty array was returned from the query whenever the server returned an empty array. This was because we were attaching the raw server value on the promise and emitting that value. This PR updates the resolved value to callgetCurrentResult
which contains the full cached result.