혼자 적어보는 노트

React에서 Redux사용 2 - useSelector / useDispatch hook 본문

React

React에서 Redux사용 2 - useSelector / useDispatch hook

jinist 2021. 11. 16. 23:46

React에서 hook이 생기고 난 후 connect방식보다

조금 더 편한 방식인 useSelector와 useDispatch 2가지 hook을 알아보자

 

useSelector()

useSelector 기능을 사용하여 redux store의 state 데이터를 추출해서 가지고 올 수 있다.

let state = useSelector((state) => state)

여기서 state는 redux에 있던 모든 state를 의미하며 위 코드는 state를 리턴한다는 뜻.
console.log(state)를 확인해보면 만들어놓은 모든 reducer들이 담겨있다.

 

connect처럼 props를 담아서 사용할 필요없이 state.[reducer name]으로 데이터를 불러올 수 있음.
예) state.reducername.id

 

특정 state만 사용하고 싶다면?

 

let state = useSelector((state) => state.[reducer name])

만들어놓은 reducer의 함수명을 적어주면 state.reducername이 아닌 state로만 데이터를 꺼내쓸 수 있다.

 

 

useDispatch()

 

let dispatch = useDispatch();

컴포넌트 안에 useDispatch를 생성해주고
connect에서 한것과 방식은 같지만 앞에 props를 적지 않고 바로 사용가능하다.

 

dispatch({ type : ??? })

'React' 카테고리의 다른 글

[React] state async로 인한 오류 useEffect로 처리  (0) 2021.11.18
[React] Tab Menu 구현 해보기  (0) 2021.11.17
[React] useContext hook  (0) 2021.11.16
[React] useEffect hook  (0) 2021.11.12
[React] useParams 활용  (0) 2021.11.09
Comments