dispatch mockclear 해주는 이유를 알게됨
javascript 는 non blocking 이기 때문에 코드 순서대로 test 가 실행된다는 보장이 없다.
때문에 dispatch 같은 경우 beforeEach 에서 mockClear 를 통해 상태를 초기화 시켜줘야 한다.
router 기능을 이용하는 것도 관심사 임을 알게됨
App → Page→ Container → Presentation 으로 분리하자
url params 를 구성할 땐 중복을 피해야 함을 깨달음
/restaurant/:restaurantId ⇒ /restaurant/:id
굳이 restaurantId 로 표시하지 않아도 앞의 restaurant 으로 restaurant 의 id 임을 알 수 있다.
react-router Test 방법
https://testing-library.com/docs/example-react-router/
액션 중심으로 redux 사용하기
기존에는 params 가 변경되면 변경된 params 를 가지고 useEffect 로 서버에 데이터를 요청했다. 즉 클릭 액션 이후에 변화한 params 상태를 기준으로 서버에 데이터를 요청했었다.
하지만 액션을 기준으로 생각해 본다면 클릭 이후 url 이 변하며 서버에 데이터를 요청하게 된다. 즉 params 에 따라서 useEffect 를 조정할 필요가 없게 된다.
코드리뷰를 받으면서 코드를 쓰기전에 생각하고 좋은 코드를 쓰려는 습관이 잡히고 있는 걸 느낀다.
또한 그 동안 공식문서 보고 붙여넣기에만 급급했던 내 실력이 얼마나 형편없었는지 깨달았다.
하지만 이미 지나간 일은 어쩔 수 없으니 앞으로 성장하는 것에 집중하려 한다.