Data Revalidation
Revalidation automatically keeps your UI in sync with server data by re-running loaders after mutations and other events.Automatic Revalidation
React Router automatically revalidates data after:- Action submissions via
<Form>,fetcher.Form, oruseSubmit - Returning from an action
- URL search params change
- Clicking a link to the same URL
Manual Revalidation
Trigger revalidation manually withuseRevalidator:
Revalidation State
Track revalidation status:Window Focus Revalidation
Polling
Conditional Revalidation
Control which routes revalidate withshouldRevalidate:
Revalidation Options
Skip Revalidation on Same URL
Only Revalidate on Mutations
Time-Based Revalidation
Parent Route Revalidation
Child route actions trigger parent loader revalidation:Fetcher Revalidation
Fetcher submissions also trigger revalidation:Navigation State
Track overall revalidation state:Optimizing Revalidation
Parallel Loading
React Router runs all loaders in parallel during revalidation:Cache Data
Selective Revalidation
Best Practices
Don’t Over-Revalidate
Use Optimistic UI
Update the UI immediately, then revalidate:Show Loading States
Related
- Loaders - Loading data
- Actions - Data mutations
- Optimistic UI - Update UI before revalidation