4. 주문 목록 & 주문 상세
1. 주문 목록 확인
🛒 장바구니와 비슷하지만, 주문 목록은 개인화된 내용
주문 목록 API에 맞춘 types 추가
export type OrderSummary = {
id: string;
title: string;
totalPrice: number;
status: string;
orderedAt: string;
}ApiService에 fetchOrders 메소드 추가
ApiService에 fetchOrders 메소드 추가async fetchOrders(): Promise<OrderSummary[]> {
const { data } = await this.instance.get('/orders');
const { orders } = data;
return orders;
}OrderListStore 추가
OrderListStore 추가Hook 생성
OrderListPage 생성
OrderListPage 생성routes에 페이지 추가
routes에 페이지 추가Header에 링크 추가
Header에 링크 추가Orders 컴포넌트 작성
Orders 컴포넌트 작성Order 컴포넌트 작성
Order 컴포넌트 작성
2. 주문 상세 확인
🛒 상품 목록/장바구니와 비슷 🛍 디테일은 상품 디테일과 유사
주문 상세 API에 맞춘 types 추가
Null Object 준비
ApiService에 fetchOrder 메소드 추가
ApiService에 fetchOrder 메소드 추가OrderDetailStore 추가
OrderDetailStore 추가중복이 싫을 경우, 보편화하는 방법을 찾아도 됨
주문 상세 정보를 얻는 useFetchOrder Hook 생성
useFetchOrder Hook 생성useFetchProduct 복사해서 사용
OrderDetailPage 생성
로딩, 에러 처리
routes에 페이지 추가
routes에 페이지 추가Order 컴포넌트 구현
처리 상태를 보고 싶은 경우 {order.status}로 받아올 수 있음
<dl />
<dl />Description List, 설명 목록
<dt>로 표기한 용어와 <dd>로 표기한 설명 그룹의 목록을 감싸서 설명 목록을 생성
주로 용어사전 구현이나 메타데이터(키-값 쌍 목록)를 표시할 때 사용
UI 구현하기
LineItem을 이용해 상품 목록을 보여주는 부분은 장바구니 보여줄 때 만든 LineItemView와 Options 컴포넌트를 재사용
Table 컴포넌트 추출
Table 컴포넌트 추출CartView 컴포넌트에서 Table 컴포넌트를 추출
Last updated