TanStack
API Reference

hydrate

ts
function hydrate(
   client,
   dehydratedState,
   options?): void;

Defined in: packages/query-core/src/hydration.ts:264

Restores a DehydratedState (as produced by dehydrate) into a QueryClient's cache, typically to seed the client with data already fetched on the server. mutations and queries are each optional on dehydratedState. Queries not yet in the cache are built from the dehydrated snapshot; queries that already exist are only updated when the dehydrated data is newer than what's already cached. Newly built queries have their fetchStatus reset to 'idle' so they don't hydrate stuck in a fetching state. If a dehydrated query still had an in-flight promise, it is resumed via query.fetch() (reusing that promise as initialPromise) rather than re-invoking queryFn.

Parameters

client

QueryClient

dehydratedState

Partial<DehydratedState>

options?

HydrateOptions

Returns

void

Example

ts
// dehydratedState was produced by `dehydrate` on the server
// and sent to the client, e.g. embedded in server-rendered markup.
const queryClient = new QueryClient()

hydrate(queryClient, dehydratedState)