001. Part 1
002. Chapter 1. React is evolving
003. Chapter 1. What s new in React
004. Chapter 1. React Hooks can add state to function components
005. Chapter 1. Better UX with Concurrent Mode and Suspense
006. Chapter 1. React s new publication channels
007. Chapter 1. Whom is this book for
008. Chapter 1. Getting started
009. Chapter 1. Summary
010. Chapter 2. Managing component state with the useState hook
011. Chapter 2. Storing, using, and setting values with useState
012. Chapter 2. Calling useState multiple times to work with multiple values
013. Chapter 2. Reviewing some function component concepts
014. Chapter 2. Summary
015. Chapter 3. Managing component state with the useReducer hook
016. Chapter 3. Managing more complicated state with useReducer
017. Chapter 3. Generating the initial state with a function
018. Chapter 3. Reviewing some useReducer concepts
019. Chapter 3. Summary
020. Chapter 4. Working with side effects
021. Chapter 4. Fetching data
022. Chapter 4. Fetching data for the BookablesList component
023. Chapter 4. Summary
024. Chapter 5. Managing component state with the useRef hook
025. Chapter 5. Storing timer IDs with a ref
026. Chapter 5. Keeping references to DOM elements
027. Chapter 5. Summary
028. Chapter 6. Managing application state
029. Chapter 6. Breaking components into smaller pieces
030. Chapter 6. Sharing the state and dispatch function from useReducer
031. Chapter 6. Sharing the state value and updater function from useState
032. Chapter 6. Passing functions to useCallback to avoid redefining them
033. Chapter 6. Summary
034. Chapter 7. Managing performance with useMemo
035. Chapter 7. Memoizing expensive function calls with useMemo
036. Chapter 7. Organizing the components on the Bookings page
037. Chapter 7. Efficiently building the bookings grid with useMemo
038. Chapter 7. Summary
039. Chapter 8. Managing state with the Context API
040. Chapter 8. Working with custom providers and multiple contexts
041. Chapter 8. Summary
042. Chapter 9. Creating your own hooks
043. Chapter 9. Following the Rules of Hooks
044. Chapter 9. Extracting further examples of custom hooks
045. Chapter 9. Consuming a context value with a custom hook
046. Chapter 9. Encapsulating data fetching with a custom hook
047. Chapter 9. Summary
048. Chapter 10. Using third-party hooks
049. Chapter 10. Getting and setting query string search parameters
050. Chapter 10. Streamlining data-fetching with React Query
051. Chapter 10. Summary
052. Part 2
053. Chapter 11. Code splitting with Suspense
054. Chapter 11. Importing components dynamically with lazy and Suspense
055. Chapter 11. Catching errors with error boundaries
056. Chapter 11. Summary
057. Chapter 12. Integrating data fetching with Suspense
058. Chapter 12. Using Suspense and error boundaries with React Query
059. Chapter 12. Loading images with Suspense
060. Chapter 12. Summary
061. Chapter 13. Experimenting with useTransition, useDeferredValue, and SuspenseList
062. Chapter 13. Using SuspenseList to manage multiple fallbacks
063. Chapter 13. Concurrent Mode and the future
064. Chapter 13. Summary