19. Jak działa hook `useReducer` w React?

Hook useReducer w React jest alternatywą dla useState, który pozwala na zarządzanie bardziej złożonym stanem w komponentach funkcyjnych. useReducer jest często używany, gdy stan komponentu zależy od wielu akcji lub jest bardziej złożony.

Składnia useReducer:

const [state, dispatch] = useReducer(reducer, initialState);

Przykład użycia useReducer:

  1. Definiowanie reducer:
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(); } }
  1. Użycie useReducer w komponencie:
import React, { useReducer } from 'react'; const initialState = { count: 0 }; function Counter() { const [state, dispatch] = useReducer(reducer, initialState); return ( <div> <p>Count: {state.count}</p> <button onClick={() => dispatch({ type: 'increment' })}>Increment</button> <button onClick={() => dispatch({ type: 'decrement' })}>Decrement</button> </div> ); }

Hook useReducer jest przydatny, gdy potrzebujesz bardziej zaawansowanego zarządzania stanem, podobnie jak w przypadku Redux, ale w ramach komponentów funkcyjnych React.

devFlipCards 2024

Akceptujesz cookies?

Cookies to niewielkie fragmenty danych zapisywane lokalnie na twoim urządzeniu. Pomagają w funkcjonowaniu naszej strony - zapisują Twoje ustawienia strony takie jak motyw czy język. Poprawiają funkcjonowanie reklam i pozwalają nam na przeprowadzanie analityki odwiedzin strony. Korzystając ze strony zgadasz się na ich wykorzystanie.