React Hooks 深度解析
为什么需要 Hooks
Hooks 让我们可以在函数组件中使用状态和其他 React 特性。
useState
const [count, setCount] = useState(0);
函数式更新
setCount(prev => prev + 1);
useEffect
处理副作用:
useEffect(() => {
// 执行副作用
return () => {
// 清理函数
};
}, [dependencies]);
useCallback & useMemo
优化性能:
const memoizedValue = useMemo(() => computeExpensiveValue(a, b), [a, b]);
const memoizedCallback = useCallback(() => doSomething(a, b), [a, b]);
自定义 Hooks
提取可复用逻辑:
function useLocalStorage(key, initialValue) {
// 实现...
}