TIL-221206- 장바구니 기능 추가 하기
어드민 기능을 구현하기 전에 일단은 만들어놓은 오늘은 어제 조금 애를 먹었던
상품 주문 페이지에서 배송지 정보 수정하기를 페이지를 이동해서 수정하는 방식으로 변경했다
장바구니의 찜한 상품 및 최근 본 상품을 장바구니에 추가하는 기능까지 구현을 하는게 목표이다 REST API 설계에서 아샬님이 저번에 해주셨던 코멘트를 조금(?) 반영해서 찜하기한 상품을 불러오는 REST API URI를 user/me/wishes/products 이렇게 사용을 하려고 했는데 아무리 봐도 이상하다.
저 URI가 가리키는 리소스는 결국 products인데 그러면 이 친구는 product컨트롤러에 있어야 해야 하는데? 근데 이 친구가 productController에 들어가게 되면 메소드가 6개가 되버리는 상황이 발생한다.
하지만 컨트롤러는 메소드가 최대 5개!
이건 URI를 다시 고려를 해봐야겠다..라는 결론에 도달해서
URI를 user/me/wishItems 이렇게 정했다. 컨트롤러는 꼭 엔티티에 종속될 필요가 없는 친구이므로 wishItemContoller를 만들어서 처리해주기로 했다.
컨트롤러에는 리소스에 대해서 CRUD를 처리하는 곳인데 컨트롤러에는 무조건 5개의 메소드가 있어야 한다라는 바보 같은 생각을 하고 있었던 것 같다.
컨트롤러에 메소드는 5개가 최대이지 1개만 있어도 상관은 없는 것이다.
그리고 최근 본 상품을 집에서 이제 구현을 해야 하는데 대충 이미지 트레이닝을 해보면
상품의 상세 페이지에 컴포넌트가 마운트 될 떄 해당 상품의 아이디를 최대 10개 까지 로컬스토리지에 저장을 한다음 최근 본 상품이 필요한 페이지에서 해당 요청을 하면 되지 않을 까?... 제발 되면 좋겠다.
그리고 오늘 메가테라 마을 반상회를 진행을 했는데 다른 동료의 코딩 시간이 일당 거의2시간 일주일 도합 14시간이나 차이가 나는 것이다. 확실히 나보다 시간이 많으니 훨씬 완성도가 높다. 이제 걸음마를 때기 시작한 단계에서는 어떤 분야이든 무조건 시간을 많이 투자를 해야 한다는 말은 익히 들었던 말이기는 한데
이렇게 까지 차이가 많이 날 줄은 몰랐는데.. 반성하자.