feat(chat-talk): 톡 목록 조회 API 연동 및 목록 UI 구성
This commit is contained in:
@@ -8,17 +8,33 @@
|
||||
import SwiftUI
|
||||
|
||||
struct TalkView: View {
|
||||
var body: some View {
|
||||
VStack(spacing: 12) {
|
||||
Spacer()
|
||||
Text("톡 페이지 (준비중)")
|
||||
.font(.custom(Font.preMedium.rawValue, size: 16))
|
||||
.multilineTextAlignment(.center)
|
||||
Spacer()
|
||||
|
||||
@StateObject var viewModel = TalkViewModel()
|
||||
|
||||
var body: some View {
|
||||
BaseView(isLoading: $viewModel.isLoading) {
|
||||
if viewModel.talkRooms.isEmpty {
|
||||
Text("대화 중인 톡이 없습니다")
|
||||
.font(.custom(Font.preRegular.rawValue, size: 20))
|
||||
.foregroundColor(.white)
|
||||
} else {
|
||||
ScrollView(.vertical, showsIndicators: false) {
|
||||
VStack(spacing: 24) {
|
||||
ForEach(0..<viewModel.talkRooms.count, id: \.self) {
|
||||
TalkItemView(item: viewModel.talkRooms[$0])
|
||||
.padding(.horizontal, 24)
|
||||
}
|
||||
}
|
||||
.padding(.vertical, 24)
|
||||
}
|
||||
}
|
||||
}
|
||||
.onAppear {
|
||||
viewModel.getTalkRooms()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#Preview {
|
||||
TalkView()
|
||||
TalkView()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user