* Marks queries matching the given filters as invalidated. Unlike * QueryClient#removeQueries, invalidated queries stay in the cache. * * Unless `filters.refetchType` is `'none'`, matching queries are then refetched via * QueryClient#refetchQueries, using `filters.refetch
(
filters?: InvalidateQueryFilters<TTaggedQueryKey>,
options: InvalidateOptions = {},
)
| 460 | * ``` |
| 461 | */ |
| 462 | invalidateQueries<TTaggedQueryKey extends QueryKey = QueryKey>( |
| 463 | filters?: InvalidateQueryFilters<TTaggedQueryKey>, |
| 464 | options: InvalidateOptions = {}, |
| 465 | ): Promise<void> { |
| 466 | return notifyManager.batch(() => { |
| 467 | this.#queryCache.findAll(filters).forEach((query) => { |
| 468 | query.invalidate() |
| 469 | }) |
| 470 | |
| 471 | if (filters?.refetchType === 'none') { |
| 472 | return Promise.resolve() |
| 473 | } |
| 474 | return this.refetchQueries( |
| 475 | { |
| 476 | ...filters, |
| 477 | type: filters?.refetchType ?? filters?.type ?? 'active', |
| 478 | }, |
| 479 | options, |
| 480 | ) |
| 481 | }) |
| 482 | } |
| 483 | |
| 484 | /** |
| 485 | * Refetches queries matching the given filters, regardless of whether they are stale. Without |
no test coverage detected