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

Function useIsFetching

packages/vue-query/src/useIsFetching.ts:10–39  ·  view source on GitHub ↗
(
  fetchingFilters: MaybeRefDeep<QF> = {},
  queryClient?: QueryClient,
)

Source from the content-addressed store, hash-verified

8export type QueryFilters = MaybeRefDeep<QF>
9
10export function useIsFetching(
11 fetchingFilters: MaybeRefDeep<QF> = {},
12 queryClient?: QueryClient,
13): Ref<number> {
14 if (process.env.NODE_ENV === 'development') {
15 if (!getCurrentScope()) {
16 console.warn(
17 'vue-query composable like "useQuery()" should only be used inside a "setup()" function or a running effect scope. They might otherwise lead to memory leaks.',
18 )
19 }
20 }
21
22 const client = queryClient || useQueryClient()
23
24 const isFetching = ref()
25
26 const listener = () => {
27 isFetching.value = client.isFetching(fetchingFilters)
28 }
29
30 const unsubscribe = client.getQueryCache().subscribe(listener)
31
32 watchEffect(listener)
33
34 onScopeDispose(() => {
35 unsubscribe()
36 })
37
38 return isFetching
39}

Callers 1

Calls 4

useQueryClientFunction · 0.90
getQueryCacheMethod · 0.80
unsubscribeFunction · 0.70
subscribeMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…