Build a Full Stack Chat App using Socket.io & Expo Router #11 - Fetch Conversations
- 서버에서 대화 목록을 가져오는 기능 구현 📡
- 소켓 이벤트를 통해 'get conversations' 이벤트 추가 및 에러 핸들링 설정 🐛
- 사용자 ID를 기반으로 참여하고 있는 대화 목록을 데이터베이스에서 가져옴 🗄️
- 대화 목록 정렬 시, 'updatedAt'을 기준으로 내림차순 정렬 적용 ⏳
- 'populate' 함수를 사용하여 마지막 메시지 및 참여자 정보 포함 🧑🤝🧑
- 프론트엔드에서 'get conversations' 이벤트 리스너 추가 및 컴포넌트 언마운트 시 이벤트 해제 👂
- 가져온 대화 목록 데이터를 상태로 관리하고 UI에 반영 🖼️
- 새로운 대화가 생성될 때 대화 목록을 업데이트하는 기능 구현 🆕
- Expo Router를 사용하여 대화 아이템 클릭 시 대화 페이지로 이동하고 데이터 전달 🚀
- 직접 대화와 그룹 대화의 아바타 및 이름 표시 로직 분리 및 적용 👤
- useLocalSearchParams 훅을 사용하여 이전 컴포넌트에서 전달된 대화 데이터 수신 및 활용 📦