MCPcopy Create free account
hub / github.com/TanStack/query / query

Method query

packages/query-core/src/queryClient.ts:346–387  ·  view source on GitHub ↗
(
    options: QueryExecuteOptions<
      TQueryFnData,
      TError,
      TData,
      TQueryData,
      TQueryKey,
      TPageParam
    >,
  )

Source from the content-addressed store, hash-verified

344 }
345
346 async query<
347 TQueryFnData,
348 TError = DefaultError,
349 TData = TQueryFnData,
350 TQueryData = TQueryFnData,
351 TQueryKey extends QueryKey = QueryKey,
352 TPageParam = never,
353 >(
354 options: QueryExecuteOptions<
355 TQueryFnData,
356 TError,
357 TData,
358 TQueryData,
359 TQueryKey,
360 TPageParam
361 >,
362 ): Promise<TData> {
363 const defaultedOptions = this.defaultQueryOptions(options)
364
365 // https://github.com/tannerlinsley/react-query/issues/652
366 if (defaultedOptions.retry === undefined) {
367 defaultedOptions.retry = false
368 }
369
370 const query = this.#queryCache.build(this, defaultedOptions)
371
372 const isStale = query.isStaleByTime(
373 resolveStaleTime(defaultedOptions.staleTime, query),
374 )
375
376 const queryData = isStale
377 ? await query.fetch(defaultedOptions)
378 : (query.state.data as TQueryData)
379
380 const select = defaultedOptions.select
381
382 if (select) {
383 return select(queryData)
384 }
385
386 return queryData as unknown as TData
387 }
388
389 /**
390 * @deprecated Use queryClient.query(options) instead. This method will be removed in the next major version.

Callers 3

infiniteQueryMethod · 0.95

Calls 6

defaultQueryOptionsMethod · 0.95
resolveStaleTimeFunction · 0.90
isStaleByTimeMethod · 0.80
selectFunction · 0.50
buildMethod · 0.45
fetchMethod · 0.45

Tested by

no test coverage detected