Instant URL search params in Next.js
Podcast |
Frontend First
Media Type |
audio
Categories Via RSS |
Technology
Publication Date |
Feb 21, 2024
Episode Duration |
00:45:29

Sam and Ryan discuss the intuition behind React Transitions, and why React’s new useOptimistic hook is a good fit for building a URL-driven filter panel that stays fully responsive to client interactions.

Topics include:

  • 0:00 - Intro
  • 1:12 - The problem: In a world of Server Components, URL updates are blocked by a server-side roundtrip
  • 10:44 - Attempted solution: Use the browser’s Native History API (history.pushState)
  • 15:03 - Realization: The source of truth flips from server to client during the transition – which is exactly what useOptimistic was designed for
  • 17:54 - Unwinding our mental model of client-first React apps by thinking about how HTML-only checkout forms work
  • 21:44 - The intuition behind React Transitions, and how they put our UI into a state of preparation
  • 30:39 - How Transitions improve upon default browser behavior by keeping our current UI 100% responsive, and how useOptimistic solves the checkbox filter panel
  • 37:46 - Ryan’s take: It’s a bonus when tools make you feel smart, but it’s more important for them to not make you feel dumb
Sam and Ryan discuss the intuition behind React Transitions, and why React’s new useOptimistic hook is a good fit for building a URL-driven filter panel that stays fully responsive to client interactions.

Sam and Ryan discuss the intuition behind React Transitions, and why React’s new useOptimistic hook is a good fit for building a URL-driven filter panel that stays fully responsive to client interactions.

Topics include:

  • 0:00 - Intro
  • 1:12 - The problem: In a world of Server Components, URL updates are blocked by a server-side roundtrip
  • 10:44 - Attempted solution: Use the browser’s Native History API (history.pushState)
  • 15:03 - Realization: The source of truth flips from server to client during the transition – which is exactly what useOptimistic was designed for
  • 17:54 - Unwinding our mental model of client-first React apps by thinking about how HTML-only checkout forms work
  • 21:44 - The intuition behind React Transitions, and how they put our UI into a state of preparation
  • 30:39 - How Transitions improve upon default browser behavior by keeping our current UI 100% responsive, and how useOptimistic solves the checkbox filter panel
  • 37:46 - Ryan’s take: It’s a bonus when tools make you feel smart, but it’s more important for them to not make you feel dumb

This episode currently has no reviews.

Submit Review
This episode could use a review!

This episode could use a review! Have anything to say about it? Share your thoughts using the button below.

Submit Review