UNPKG

@suspensive/react-query-4

Version:

Suspensive interfaces for @tanstack/react-query@4

20 lines (17 loc) 798 B
'use client' import { type FetchQueryOptions, type QueryKey, useQueryClient } from '@tanstack/react-query' /** * The `usePrefetchQuery` does not return anything, it should be used just to fire a prefetch during render, before a suspense boundary that wraps a component that uses `useSuspenseQuery`. * @see {@link https://suspensive.org/docs/react-query/usePrefetchQuery Suspensive Docs} */ export function usePrefetchQuery< TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, >(options: FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>) { const queryClient = useQueryClient() if (typeof options.queryKey !== 'undefined' && !queryClient.getQueryState(options.queryKey)) { void queryClient.prefetchQuery(options) } }