Reactathon - React Suspense Workshop
About the Instructor: Kent C. Dodds
About the workshop
Simplify your Async UI and improve your User Experience
One of the biggest challenges to writing software for the web is dealing with asynchrony -- even though we have to deal with it all the time. This leads to a bunch of boilerplate code for handling loading and error states just to get the data we need to show the user-- whether the data comes from a remote endpoint or from browser APIs like geolocation and Bluetooth. The end result is countless spinners and the dreaded FOLC (flash of loading content).
React Suspense is the answer to these problems. It's a primitive built into React that drastically simplifies asynchronous state management in our applications, and helps you avoid FOLC out of the box. It's a bit of a different approach to managing these problems and understanding how it works is key to taking advantage of what it has to offer.
In this workshop, you'll learn how Suspense works under the hood, preparing you for the future of asynchronous state management.
At the end of the workshop, you will:
- Know how Suspense works fundamentally
- Be able to write your own Suspense-based abstraction
- Understand the benefits and how to of "render as you fetch"
- Know how to use useTransition and useDeferredValue effectively
- Know how to write your own cache for suspense-based abstractions
- Know how to use to coordinate multiple suspending components
- Watch Dan Abramov's talk Beyond React 16 | JSConf Iceland 2018 (33 minutes)
- Go through Kent's Learn React Hooks Workshop, or have the equivalent basic experience of using hooks. You should be experienced with useState, useEffect, and useRef.
- Go through Kent's Advanced React Hooks Workshop, or have the equivalent experience. You should be experienced with useContext and useReducer (experience with useMemo and useCallback is a bonus).
Workshop length: full day
Target level: Intermediate/Advanced
Super Early Bird - Tickets are $399
Early Bird - Tickets are $499.
General Admission - Tickets are $599
Tickets Prices in USD