Что такое useReducer

Python Middle Без компании
Что такое useReducer
Ответы
`useReducer` — это хук в React, предназначенный для управления сложным состоянием компонента. Он принимает редюсер (функцию) и начальное состояние, возвращая текущее состояние и метод `dispatch` для обновления состояния. **Когда использовать:** - Когда состояние имеет сложную логику обновления. - Когда следующее состояние зависит от предыдущего. - Для оптимизации производительности (передача `dispatch` вместо колбэков). **Пример:** ``` const initialState = { count: 0 }; function reducer(state, action) { switch (action.type) { case 'increment': return { count: state.count + 1 }; case 'decrement': return { count: state.count - 1 }; default: throw new Error(); } } function Counter() { const [state, dispatch] = useReducer(reducer, initialState); return ( <> Count: {state.count} <button onClick={() => dispatch({ type: 'increment' })}>+</button> <button onClick={() => dispatch({ type: 'decrement' })}>-</button> </> ); } ```