MCPcopy
hub / github.com/TanStack/query / ensureQueryData

Method ensureQueryData

packages/query-core/src/queryClient.ts:140–164  ·  view source on GitHub ↗
(
    options: EnsureQueryDataOptions<TQueryFnData, TError, TData, TQueryKey>,
  )

Source from the content-addressed store, hash-verified

138 }
139
140 ensureQueryData<
141 TQueryFnData,
142 TError = DefaultError,
143 TData = TQueryFnData,
144 TQueryKey extends QueryKey = QueryKey,
145 >(
146 options: EnsureQueryDataOptions<TQueryFnData, TError, TData, TQueryKey>,
147 ): Promise<TData> {
148 const defaultedOptions = this.defaultQueryOptions(options)
149 const query = this.#queryCache.build(this, defaultedOptions)
150 const cachedData = query.state.data
151
152 if (cachedData === undefined) {
153 return this.fetchQuery(options)
154 }
155
156 if (
157 options.revalidateIfStale &&
158 query.isStaleByTime(resolveStaleTime(defaultedOptions.staleTime, query))
159 ) {
160 void this.prefetchQuery(defaultedOptions)
161 }
162
163 return Promise.resolve(cachedData)
164 }
165
166 getQueriesData<
167 TQueryFnData = unknown,

Callers 3

Calls 6

defaultQueryOptionsMethod · 0.95
fetchQueryMethod · 0.95
prefetchQueryMethod · 0.95
resolveStaleTimeFunction · 0.90
isStaleByTimeMethod · 0.80
buildMethod · 0.45

Tested by

no test coverage detected