Why all the Suspense?
Docs and information available at www.solidjs.com
Who am I?
Why Suspense?
Phantom Notifications
React: 0 0 0
Vue 3: 1 2 0
Svelte: 1 0 0
Solid: 1 2 2
Tearing
Async Consistency
What is Suspense?
What Suspense is Not
Reads are Key
const [data, { refetch }] = createResource(
() => fetchUser(`/api/users`)
);
return <Suspense fallback={<div>Loading...</div>}>
{JSON.stringify(data())}
</Suspense>
More than Data Fetching
Handling Errors
Out of Order Streaming
2. Staying in the Past
Introducing Transitions
How Transitions Work
3. Showing the Future
Mutation
Time Slicing?
Scheduled Queuing
Event
Pure Computation
Render Effects
User Effects
setState(value)
VDOM = fn(state)
Diff and Patch
useEffect(fn)
setSignal(value)
createMemo(fn)
createRenderEffect(fn)
createEffect(fn)
Async Consistency
@RyanCarniato