useContext in React
From the React Hooks cheat sheet · Context & Refs · verified Jul 2026
useContext
Consume context values
javascript
// Create context
const ThemeContext = createContext()
// Provider component
<ThemeContext.Provider value={{ dark: true }}>
<App />
</ThemeContext.Provider>
// React 19: render <Context> directly as the provider
<ThemeContext value={{ dark: true }}>
<App />
</ThemeContext>
// Consume in any child
const theme = useContext(ThemeContext)
// React 19: use() can read context conditionally (inside if/loops)
const theme2 = use(ThemeContext)
// Custom hook pattern
function useTheme() {
const context = useContext(ThemeContext)
if (!context) throw new Error('No ThemeProvider')
return context
}💡 Component re-renders when context value changes
⚡ React 19: render <Context value={}> directly (no .Provider); use(Context) reads conditionally
✅ Better than prop drilling for deep trees