• Reusing Logic with Custom Hooks
  • Challenge 5 of 5: Implement a staggering movement
  • Custom Hooks: Sharing logic between components

  • Hook names always start with use

  • Custom Hooks let you share stateful logic, not state itself

  • Passing reactive values between Hooks

  • Passing event handlers to custom Hooks

  • When to use custom Hooks

  • Custom Hooks help you migrate to better patterns

  • There is more than one way to do it

  • Challenge 1 of 5: Extract a useCounter Hook

  • Challenge 2 of 5: Make the counter delay configurable

  • Challenge 3 of 5: Extract useInterval out of useCounter

  • Challenge 4 of 5: Fix a resetting interval

  • Challenge 5 of 5: Implement a staggering movement