feat: Working prototype of deferred queries, but with an annoying caveat #7
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.
You need to call the deferred queries after the queries you don't need to defer in the queries argument for it to work as expected.
Example:
This would work like this:
useGetPokemonsQuery
.useGetPokemonByNameQuery
is slower, we are giving it a fallback value in thedeferred
argument. This value will be passed to the component while the loader is waiting for the query to resolve in the background.useGetPokemonByNameQuery
resolves, the component will again rerender with the updated loader data.I'm thinking of merging this as is, so it'll be included in the next release. It's not perfect, but it's atleast something. You could always "defer" queries by not including them in the loader at all, and just calling them in the component body instead. This atleast opens up the option.