2023년 05월 16일
수정하기
문서 생성 2023-05-16 21:34:33 최근 수정 2023-05-16 22:39:41
기세
📚 오늘 도전하고, 배운 것
Reselect
- memoization한 selector 함수를 만들기 위한 라이브러리
- Redux Toolkit은 Reselect의
createSelector
함수를 가져와 사용할 수 있다. input selector
함수를 하나 이상,output selector
함수를 전달받는다.input selector
가 반환하는 값은output selector
의 인수가 된다.
데이터 정규화
- 보통 서버에서 데이터를 전달받을 때 array로 전달받아서 그 중 하나의 값을 얻고자
array.find
같은 함수를 사용한다.- 만약 배열의 길이가 무지 크다면,
find
를 사용해 전체 배열을 살펴보는 것은 효율적이지 못하다. - 그래서 모든 항목을 확인하지 않고
id
를 사용해 항목 하나를 확인할 수 있는 방법이 필요한데, 이 프로세스를 "normalization(정규화)"라고 한다.
- 만약 배열의 길이가 무지 크다면,
- Redux Toolkit의
createEntityAdapter
를 사용해 상태를 정규화할 수 있다.
🤔 학습하면서 궁금하거나 어려웠던 점
- template으로 생성한 React-redux 앱에
useAppDispatch
와useAppSelector
를 사용하는 걸 발견했다.- 꼭 필요한 것은 아니지만 type을 미리 선언해서 편의성을 높인다.
- 매번
Dispatch
type을 제대로 사용하지 않아서 문제가 발생할 수 있다. 이를 방지하기 위함.
🌅 내일은 무엇을?
- Redux 사용하기
✒️ log
- 평화를 되찾음.
- 기세가 중요하다!