Emily Learns React
Get Started
Quick Start
Tutorial: Tic-Tac-Toe
Thinking in React: Product Stock
Learn React
Describing the UI
Your First Component
Importing and Exporting Components
Writing Markup with JSX
JavaScript in JSX with Curly Braces
Passing Props to a Component
Conditional Rendering
Rendering Lists
Keeping Components Pure
Adding Interactivity
Responding to Events
State: A Component's Memory
Render and Commit
State as a Snapshot
Queueing a Series of State Updates
Updating Objects in State
Updating Arrays in State
Managing State
Reacting to Input with State
Choosing the State Structure
Sharing State Between Components
Preserving and Resetting State
Extracting State Logic into a Reducer
Passing Data Deeply with Context
Scaling Up with Reducer and Context
Escape Hatches
Referencing Values with Refs
Manipulating the DOM with Refs
Synchronizing with Effects
You Might Not Need an Effect
Lifecycle of Reactive Effects
Separating Events from Effects
Removing Effect Dependencies
Reusing Logic with Custom Hooks