Some methods within TanStack 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({ queryKey: ['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({ queryKey: ['posts'], type: 'active' })
// Cancel all queries
await queryClient.cancelQueries()
// Remove all inactive queries that begin with `posts` in the key
queryClient.removeQueries({ queryKey: ['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({ queryKey: ['posts'], type: 'active' })
A query filter object supports the following properties:
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,
})
// 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:
const isMatching = matchQuery(filters, query)
const isMatching = matchQuery(filters, query)
Returns a boolean that indicates whether a query matches the provided set of query filters.
const isMatching = matchMutation(filters, mutation)
const isMatching = matchMutation(filters, mutation)
Returns a boolean that indicates whether a mutation matches the provided set of mutation filters.
“This course is the best way to learn how to use React Query in real-world applications.”—Tanner LinsleyGet the course