illustration for Use Suspense to Simplify Your Async UI

Use Suspense to Simplify Your Async UI

Instructor

Kent C. Dodds
  • React
    0.0.0-experimental-b53ea6ca0
4h 27m closed-captioning
Updated 2 weeks ago
Star icon$$$
Star icon$$$
Star icon$$$
Star icon$$$
Star icon$$$
4.7
329
people completed
Bookmark
Download
RSS

🚧 SUSPENSE IS EXPERIMENTAL

One of the biggest challenges to writing software for the web is dealing with asynchrony, but 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.

React Suspense is 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.

Listen to Kent C. Dodds tell you about this course:

What you'll learn

  • React Suspense
  • Async State

Learner Reviews

  • Services Epignosis
    4 months ago
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    What did you like about this course?

    Awesome, awesome, awesome content.

    The eager preload for suspenseList was a really really clever trick.

    I'd love to see a few more example for the fetch-as-you render but that's OK. Everything was crystal clear.

    Keep up the great work Kent!

  • Gus Saiani
    7 months ago
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    What did you like about this course?

    Thanks, Kent.

    Pretty clear, great work with the Pokemon app, it made everything even more fun 👍

  • Alex
    11 months ago
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    What did you like about this course?

    I really enjoyed this course. There was tons of transferable knowledge that I felt could immediately benefit other projects I am working on.

    Another thing that I can't stress enough how much I enjoyed was the brevity of the course. I've seen so many other instructors or courses that seem to subscribe to the "more-is-more" approach, so it's refreshing to finally find a course that is actually digestible, but still packed with information.

    This was my first egghead course, and completely validated my decision to become a subscriber. Thank you!

  • amiparik
    a year ago
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    What was your strongest take away from this course?

    Very nice course Kent. Thank you. I enjoy a lot while watching all your courses.

  • Yann Picard
    a year ago
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    What did you like about this course?

    The progression is well constructed, the course fairly depicts the current situation, and it goes beyond the technical bits and helps me get thinking of micro-interactions I will want to do when Concurrent mode will ship through fine examples :-)

  • Kazimirkas
    a year ago
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    Star icon$$$
    What did you like about this course?

    I think, that that kind of courses should be the main core of egghead material. Bravo!

Course Content

4h 27m • 21 lessons

You might also like these resources:

illustration for Introduction to Cloudflare Workers

Introduction to Cloudflare Workers

Kristian Freeman・36m・Course

Become familiar with the Workers CLI wrangler that we will use to bootstrap our Worker project. From there you'll understand how a Worker receives and returns requests/Responses. We will also build this serverless function locally for development and deploy it to a custom domain.

illustration for Create an eCommerce Store with Next.js and Stripe Checkout

Create an eCommerce Store with Next.js and Stripe Checkout

Colby Fayock・1h 4m・Course

This is a practical project based look at building a working e-commerce store using modern tools and APIs. Excellent for a weekend side-project for your developer project portfolio

illustration for Practical Git for Everyday Professional Use

Practical Git for Everyday Professional Use

Trevor Miller・1h・Course

git is a critical component in the modern web developers tool box. This course is a solid introduction and goes beyond the basics with some more advanced git commands you are sure to find useful.