Comments (6)
The next major version will take care of this. 👍
from react-query.
from react-query.
I've written a simple wrapper hook which helps with this situation, I have not tested it though:
import { useEffect, useState } from "react";
import { useQuery as _useQuery } from "@tannerlinsley/react-query-temp";
const useQuery = (...props) => {
const [data, setData] = useState();
const {res: data, ...rest} = _useQuery(...props)
useEffect(() => {
setData(res)
}, [res]);
return {data, setData, ...rest};
};
export default useQuery;
If you expose getQueryInfo
, it would be possible to manipulate the state
directly and there will be no need for any extra states (the state
can be retrieved from _useQueryContext
which is already exposed).
from react-query.
Seems like this is a perfectly simple abstraction for your use case. How would exposing useQueryContext help in this scenario? This is fairly edge case, but possible to solve as you've shown.
from react-query.
_useQueryContext
is already exported, It is possible to update the query data directly by manipulating the context if we know the queryHash
of the query we are trying to update.
export function _useQueryContext() {
return React.useContext(context)
}
That custom hook would help with this use case but a built-in solution would be better.
from react-query.
Stay tuned.
from react-query.
Related Issues (20)
- `queryClient.getQueryCache().find` is not filtering out the cache correctly HOT 2
- initial data breaks keepPreviousData HOT 1
- combine returns a new instance each time when useQueries is called without queries
- '@tanstack/react-query' does not work in Safari 14 HOT 9
- Tanstack query results are not always reactive in SolidJS as they sometimes return a non-proxy object HOT 6
- [vue-query] `placeholderData` has TypeScript error for generic data since v5 HOT 3
- Incorrect types for focusManager.setEventListener HOT 2
- useQueries `queries` property does not allow for setting network mode HOT 2
- [useInfiniteQuery] succeeds in fetching the data, but does not update the data. HOT 3
- [solved] Uncaught TypeError: node.addEventListener is not a function HOT 4
- [react-query] useSuspenseQueries does not throw on errors after queryKey change HOT 3
- UseInfiniteQuery not returning data when used within hooks HOT 2
- HydrationBoundary not working as expected HOT 11
- Vue: Query key doesn't match the current value of ref used inside query function after `invalidateQueries` HOT 2
- [svelte-query-devtools] `styleNone` props should be optional
- throwing error is not working HOT 3
- when gcTime is zero, it make hydration fail warning HOT 4
- No QueryClient set, use QueryClientProvider to set one HOT 6
- Errors after upgrade to Vite 5 / Rollup 4 HOT 3
- Invalidate Queries don't work with notification context HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-query.