ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • react-redux 패키지와 Hooks 사용하기
    React 2021. 6. 13. 14:50

    시작하기 전에..

    Hook이란 무엇인가?
    번역해보면 "갈고리"라는 뜻을 가지고 있다.
    아이스크림을 훅해서 퍼먹는 것처럼 무언가 가져오는 느낌이다.

    우리가 React에서 useState라는 Hook을 사용하여 상태를 관리하였다. 마찬가지로 Redux의 상태를 가져와서 사용하려면 react-redux의 Hook을 사용하면 된다.

    Redux Hook 중 가장 많이 사용하는 useDispatch 와 useSelector 에 대해 알아보자.

    📌 리액트 훅이란?

    함수형 컴포넌트에서도 클래스형 컴포넌트의 기능을 사용할 수 있게 하는 기능이다.

    📌 훅킹(Hooking)이란?

    이미 작성되어 있는 코드의 특정 지점을 가로채서 동작 방식에 변화를 주는 일체의 기술이다.

    react-redux 패키지 설치하기

    먼저 react-redux 패키지를 먼저 설치한다.

    $ npm install react-redux

    Provider 컴포넌트 사용하기

    가장 먼저 작성할 코드는 react-redux에서 제공하는 Provider 컴포넌트를 리액트의 최상위 컴포넌트로 아래와 같이 정의해야 한다.

    const store = createStore(rootReducer)
    
    ReactDOM.render(
      <Provider store={store}>
        <App />
      </Provider>,
      document.getElementById('root')
    )

    useDispatch와 useSelector

    📘 useSelector

    useSelector Hook을 통하여 우리는 리덕스 스토어 상태에 접근 할 수 있다. state를 가져올 수 있다.

    📘 useDispatch

    useDispatch Hook은 컴포넌트 내에서 dispatch를 사용 할 수 있게 해준다. 이 dispatch 를 이용해 action 을 발생시킨다.

    ✏️ 예제를 통해 useDispatch와 useSelector hook 사용해보기

    import React, { useEffect } from 'react';
    
    import { useDispatch, useSelector } from 'react-redux';
    
    function Component () {
      const dispatch = useDispatch();   
    
      useEffect(() => {
        dispatch({ type: Action });
      }, [dispatch]);
    
      const value = useSelector(state => state.value);
    
      return <div>{value}</div>;
    }

     

     

     

    참고사이트: https://react-redux.js.org/api/hooks
    참고문서: 실전 리액트 프로그래밍 [이재승 지음, 인사이트]

     

    Hooks | React Redux

    API > Hooks: the `useSelector` and `useDispatch` hooks`

    react-redux.js.org

     

    'React' 카테고리의 다른 글

    Link와 NavLink  (0) 2021.07.29
    Redux Thunk  (0) 2021.06.14
    Redux로 상태 관리하기  (0) 2021.06.12
    Presentational 컴포넌트와 Container 컴포넌트  (0) 2021.06.11
    useEffect Hook  (0) 2021.06.11
Designed by Tistory.