Deferred props
Load slow page sections after the first render, in groups.
Defer leaves a prop out of the first response and lists it under deferredProps. The client requests each group with a partial reload as soon as the page is mounted. The page becomes interactive without waiting for the slow data.
Props in the same group load in one request. Different groups load in parallel requests. deferredProps is only produced on non-partial renders.
The client
Vue uses <Deferred data="stats"> from @inertiajs/vue3; Svelte uses the matching component from @inertiajs/svelte.
Combining with other props
A deferred prop can also be merged, once or rescued:
The metadata combines: deferredProps lists the group, mergeProps lists the path, and onceProps records the key.
Deferred scroll props
A deferred Scroll(...) prop reports "posts.data" just like a resolved one. This is a deliberate fix of an inertia-laravel quirk:
Testing
See Testing for the full assertion API.
Use deferred props for below-the-fold data
Deferred props are for data the page can render without. If the page cannot be meaningful until the data arrives, a normal prop is simpler.