fix: 배너 컴포넌트 초기 렌더링 시 레이아웃 흔들림(화면 안정성 개선)#87
Conversation
Walkthrough배너 컴포넌트의 슬라이더 기능을 안정화했습니다. 콘텐츠가 여러 개일 때만 루핑이 작동하도록 조건을 추가하고, 로딩 완료 전까지 첫 번째 슬라이드를 제외한 모든 슬라이드를 숨기는 기능을 구현했습니다. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Possibly related PRs
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Repository UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used🧬 Code graph analysis (1)packages/ui/src/components/Banner/Banner.tsx (1)
🔇 Additional comments (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
#️⃣연관된 이슈
📝작업 내용
1. 배너 초기 렌더링 시 레이아웃 흔들림(CLS) 해결
문제 상황:
keen-slider 라이브러리는 자바스크립트가 실행되고 초기화(init)된 후에야 슬라이드 위치를 계산합니다. 이로 인해 JS 로딩 전(Hydration 이전)에는 contents들이 세로로 나열되었다가 제대로 확장 되며 레이아웃이 덜컥거리는 현상이 발생했습니다.
해결 방법:
JS가 로드되기 전에는 style를 활용하여 첫 번째 슬라이드만 노출하고, 나머지 슬라이드는 숨김(hidden) 처리하여 레이아웃을 고정했습니다.
스크린샷 (선택)
적용 전

적용 후
💬리뷰 요구사항(선택)
Summary by CodeRabbit
버그 수정
✏️ Tip: You can customize this high-level summary in your review settings.