코드스테이츠FEB [ 48번째 ]

쫀구·2022년 7월 7일
0
post-thumbnail
post-custom-banner

📝 오늘 학습한 내용

22/07/07
어제 페어와 함께 redux 과제를 다 풀고 복습하는 시간을 가졌다. 오늘 한 번 더 cmarketHooks 와 redux를 풀어 보며 동작하는 방식을 이해하고 어제 이해하지 못했던 store 와 useDispatch 와 일반적인 Dispatch에 대해서도 알게 되었다.

🤔 어려웠던내용

[어제 어려웠던내용]
redux에서 중요한 네가지 키워드중 store 부분이 이해가 안간다.

import { compose, createStore, applyMiddleware } from "redux";
import rootReducer from '../reducers/index';
import thunk from "redux-thunk";

const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ?
  window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({})
  : compose;
const store = createStore(rootReducer, composeEnhancers(applyMiddleware(thunk)));

export default store;

오늘 과제의 store 부분의 코드인데, 추가적인 학습이 필요할 것 같다.
그리고 redux hooks의 useDispatch 와 일반적인 Dispatch 둘의 관계도 조금 어려웠다. useDispatch만 사용해도 되는지 헷갈린다.


유어 클래스에서 제공하는 콘텐츠에서는 useDispatch Dispatch 가 각각 다른 것처럼 내용이 되어있어서 헷갈렸다. 알고 보니 useDispatch()를 사용하여 Dispatch를 하는 내용이었다. (어이없었다ㅎㅎ) 그리고 store 선언 후 createStore 할당하는 이 부분이 이해가 안 갔는데 Redux 만든 사람이 정의해 놓은 거라 그냥 이렇게 사용하는 거구나 알게 되었다. 그리고 createStore(reducer) 리듀서를 값으로 전달하여 화면에 렌더링 되도록 하는 것을 이해하게 되었다.

🌴 정리

redux를 사용할때 원본 값이 바뀌지 않도록 스프레드연산자나 assign을 사용하여 복사를한다.
redux만 고집 하지말고 리액트의 state,props 가 더 편할수도 있으니 상황에 맞게 사용하도록 한다.

profile
Run Start 🔥
post-custom-banner

0개의 댓글