@pickme/review
    Preparing search index...

    Function default

    • ReviewPage 컴포넌트

      이 컴포넌트는 URL 파라미터에서 인터뷰 리뷰 ID를 받아 해당 리뷰 데이터를 조회하고, 로딩 상태에 따라 ReviewSkeleton 또는 ReviewForm을 조건부로 렌더링합니다.

      기능:

      • reviewId를 기준으로 인터뷰 리뷰 데이터를 가져옵니다.
      • 데이터를 성공적으로 가져오면 Zustand의 useReviewStore를 통해 전역 상태에 저장합니다.
      • 로딩 중일 땐 ReviewSkeleton, 로딩 완료 시엔 ReviewForm을 렌더링합니다.
      • ReviewForm에는 key={review.updatedAt}을 지정하여 데이터가 변경된 경우에만 리렌더링이 일어나도록 제어합니다.

      UI 컴포넌트:

      • ReviewSkeleton: 로딩 중일 때 보여주는 스켈레톤 컴포넌트입니다.
      • ReviewForm: 리뷰 데이터를 기반으로 렌더링되는 메인 폼 컴포넌트입니다.

      Returns Element

      • useQuery는 React Query를 사용해 비동기 리뷰 데이터를 가져오며, 캐시와 staleTime을 활용하여 최적화를 수행합니다.
      • 동일한 리뷰를 다시 클릭했을 때는 review.updatedAt이 변경되지 않으므로 ReviewForm이 리렌더링되지 않고 재사용됩니다.
      • 반대로, 리뷰가 수정되어 updatedAt이 변경된 경우에는 key가 바뀌어 컴포넌트가 새로 마운트되어 최신 상태를 반영합니다.
      <Route path="/:reviewId" element={<ReviewPage />} />