[리뷰 팝업 노출 관련 수정]
- 리뷰 팝업 노출시 인디케이터로 이동후 포커스 벗어나면 초기화되는부분이 있어 이부분에 대한 수정.
This commit is contained in:
@@ -38,10 +38,6 @@ export default function UserReviewDetail({
|
|||||||
}
|
}
|
||||||
}, [onNext, currentIndex, totalReviews]);
|
}, [onNext, currentIndex, totalReviews]);
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
console.log("####currentIndex", currentIndex);
|
|
||||||
}, [currentIndex]);
|
|
||||||
|
|
||||||
// 리뷰 데이터가 없을 때 처리
|
// 리뷰 데이터가 없을 때 처리
|
||||||
if (!currentReview) {
|
if (!currentReview) {
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -105,36 +105,29 @@ export default function UserReviewsPopup({
|
|||||||
// All-Images 및 User-Reviews 모드를 위한 상태
|
// All-Images 및 User-Reviews 모드를 위한 상태
|
||||||
const [currentReviewIndex, setCurrentReviewIndex] = useState(0);
|
const [currentReviewIndex, setCurrentReviewIndex] = useState(0);
|
||||||
|
|
||||||
// 모드별 리뷰 인덱스 초기화
|
// 모드 변경 시 초기화
|
||||||
// ✅ selectedImageIndex 변경 감지 추가: 클릭한 리뷰가 팝업에 표시되도록
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
console.log('[UserReviewsPopup] Mode or selectedImageIndex changed:', {
|
console.log('[UserReviewsPopup] Mode or selectedImageIndex changed:', {
|
||||||
mode,
|
mode,
|
||||||
selectedImageIndex,
|
selectedImageIndex,
|
||||||
allReviewsLength: allReviews?.length || 0,
|
allReviewsLength: allReviews?.length || 0,
|
||||||
});
|
});
|
||||||
|
if (mode === "all-images" && selectedImageIndex !== undefined) {
|
||||||
if (mode === "all-images" && images && images[selectedImageIndex]) {
|
const selectedImage = images?.[selectedImageIndex];
|
||||||
const selectedImage = images[selectedImageIndex];
|
if (selectedImage) {
|
||||||
const reviewIndex = reviewsWithImages.findIndex(
|
const reviewIndex = reviewsWithImages.findIndex(
|
||||||
(review) => review.rvwId === selectedImage.reviewId
|
(review) => review.rvwId === selectedImage.reviewId
|
||||||
);
|
);
|
||||||
if (reviewIndex !== -1) {
|
if (reviewIndex !== -1) {
|
||||||
console.log('[UserReviewsPopup] all-images mode - found review index:', reviewIndex);
|
console.log('[UserReviewsPopup] all-images mode - found review index:', reviewIndex);
|
||||||
setCurrentReviewIndex(reviewIndex);
|
setCurrentReviewIndex(reviewIndex);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else if (mode === "user-reviews") {
|
} else if (mode === "user-reviews" && selectedImageIndex !== undefined) {
|
||||||
// User-Reviews 모드: selectedImageIndex를 그대로 사용
|
|
||||||
console.log('[UserReviewsPopup] user-reviews mode - setting index to:', selectedImageIndex);
|
console.log('[UserReviewsPopup] user-reviews mode - setting index to:', selectedImageIndex);
|
||||||
setCurrentReviewIndex(selectedImageIndex);
|
setCurrentReviewIndex(selectedImageIndex);
|
||||||
}
|
}
|
||||||
}, [
|
}, [mode, selectedImageIndex]); // selectedImageIndex는 명시적 변경 시만
|
||||||
mode,
|
|
||||||
selectedImageIndex, // ✅ 추가: 선택된 이미지 인덱스 변경 감지
|
|
||||||
images, // ✅ 추가: 이미지 데이터 변경 감지
|
|
||||||
reviewsWithImages, // ✅ 추가: 이미지 있는 리뷰 변경 감지
|
|
||||||
allReviews, // ✅ 추가: allReviews 변경 감지
|
|
||||||
]);
|
|
||||||
|
|
||||||
// 리뷰 네비게이션 핸들러 (All-Images 및 User-Reviews 모드)
|
// 리뷰 네비게이션 핸들러 (All-Images 및 User-Reviews 모드)
|
||||||
const handlePreviousReview = useCallback(() => {
|
const handlePreviousReview = useCallback(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user