id | title |
---|---|
filters |
Filters |
Some methods within React Query accept a QueryFilters
or MutationFilters
object.
A query filter is an object with certain conditions to match a query with:
// Cancel all queries
await queryClient.cancelQueries()
// Remove all inactive queries that begin with `posts` in the key
queryClient.removeQueries(['posts'], { type: 'inactive' })
// Refetch all active queries
await queryClient.refetchQueries({ type: 'active' })
// Refetch all active queries that begin with `posts` in the key
await queryClient.refetchQueries(['posts'], { type: 'active' })
A query filter object supports the following properties:
exact?: boolean
- If you don't want to search queries inclusively by query key, you can pass the
exact: true
option to return only the query with the exact query key you have passed.
- If you don't want to search queries inclusively by query key, you can pass the
type?: 'active' | 'inactive' | 'all'
- Defaults to
all
- When set to
active
it will match active queries. - When set to
inactive
it will match inactive queries.
- Defaults to
stale?: boolean
- When set to
true
it will match stale queries. - When set to
false
it will match fresh queries.
- When set to
fetchStatus?: FetchStatus
- When set to
fetching
it will match queries that are currently fetching. - When set to
paused
it will match queries that wanted to fetch, but have beenpaused
. - When set to
idle
it will match queries that are not fetching.
- When set to
predicate?: (query: Query) => boolean
- This predicate function will be called for every single query in the cache and be expected to return truthy for queries that are
found
.
- This predicate function will be called for every single query in the cache and be expected to return truthy for queries that are
queryKey?: QueryKey
- Set this property to define a query key to match on.
A mutation filter is an object with certain conditions to match a mutation with:
// Get the number of all fetching mutations
await queryClient.isMutating()
// Filter mutations by mutationKey
await queryClient.isMutating({ mutationKey: ["post"] })
// Filter mutations using a predicate function
await queryClient.isMutating({ predicate: (mutation) => mutation.options.variables?.id === 1 })
A mutation filter object supports the following properties:
exact?: boolean
- If you don't want to search mutations inclusively by mutation key, you can pass the
exact: true
option to return only the mutation with the exact mutation key you have passed.
- If you don't want to search mutations inclusively by mutation key, you can pass the
fetching?: boolean
- When set to
true
it will match mutations that are currently fetching. - When set to
false
it will match mutations that are not fetching.
- When set to
predicate?: (mutation: Mutation) => boolean
- This predicate function will be called for every single mutation in the cache and be expected to return truthy for mutations that are
found
.
- This predicate function will be called for every single mutation in the cache and be expected to return truthy for mutations that are
mutationKey?: MutationKey
- Set this property to define a mutation key to match on.