Welcome to the React Hooks Documentation! Hooks are a feature of React (starting from version 16.8) that let you "hook into" React state and lifecycle features from function components.
Quick Start
Here's a quick overview of the most commonly used hooks:
useState
: Adds React state to function componentsuseEffect
: Adds React lifecycle features likecomponentDidMount
,componentDidUpdate
, andcomponentWillUnmount
useContext
: Accesses React context without a provideruseReducer
: A hook similar touseState
for more complex state logic that involves multiple sub-values or when the next state depends on the previous oneuseCallback
: Memoizes a callbackuseMemo
: Memoizes a value
useState
The useState
hook allows you to add React state to function components.
import React, { useState } from 'react';
function Counter() {
const [count, setCount] = useState(0);
return (
<div>
<p>You clicked {count} times</p>
<button onClick={() => setCount(count + 1)}>
Click me
</button>
</div>
);
}
Counter Example
useEffect
The useEffect
hook runs a function after each render. This is useful for fetching data, handling lifecycle events, and more.
import React, { useState, useEffect } from 'react';
function Example() {
const [data, setData] = useState(null);
useEffect(() => {
fetchData().then(setData);
}, []); // Empty dependency array means this effect runs only once
return (
<div>
{data ? <div>{JSON.stringify(data)}</div> : <p>Loading...</p>}
</div>
);
}
UseEffect Example
For more information, visit the official React Hooks documentation.
If you're looking for more resources on React Hooks, check out our Advanced React Hooks Guide.