Files
upstream-mirror 3a013ccdfe
Some checks failed
autofix.ci / autofix (push) Failing after 4s
Release / Release (push) Has been skipped
GitHub Actions Security Analysis / Run zizmor (push) Failing after 2s
snapshot of https://github.com/TanStack/query.git (main, 2026-09-16; blobs > 131072B omitted)
2026-09-16 01:13:08 +05:00

67 lines
1.5 KiB
Markdown

---
id: query-retries
title: Query Retries
ref: docs/framework/react/guides/query-retries.md
replace:
{
'Provider': 'Plugin',
'useQuery': 'injectQuery',
'useMutation': 'injectMutation',
}
---
[//]: # 'Info'
[//]: # 'Info'
[//]: # 'Example'
```ts
import { injectQuery } from '@tanstack/angular-query-experimental'
// Make a specific query retry a certain number of times
const todoQuery = injectQuery(() => ({
queryKey: ['todos', 1],
queryFn: fetchTodoListPage,
retry: 10, // Will retry failed requests 10 times before displaying an error
}))
```
[//]: # 'Example'
[//]: # 'Example2'
```ts
// Configure for all queries
import {
QueryCache,
QueryClient,
provideTanStackQuery,
} from '@tanstack/angular-query-experimental'
const queryClient = new QueryClient({
defaultOptions: {
queries: {
retryDelay: (attemptIndex) => Math.min(1000 * 2 ** attemptIndex, 30000),
},
},
})
bootstrapApplication(AppComponent, {
providers: [provideTanStackQuery(queryClient)],
})
```
[//]: # 'Example2'
Though it is not recommended, you can obviously override the `retryDelay` function/integer in both the Provider and individual query options. If set to an integer instead of a function the delay will always be the same amount of time:
[//]: # 'Example3'
```ts
const todosQuery = injectQuery(() => ({
queryKey: ['todos'],
queryFn: fetchTodoList,
retryDelay: 1000, // Will always wait 1000ms to retry, regardless of how many retries
}))
```
[//]: # 'Example3'