diff --git a/JUDA_iOS/JUDA/View/Main/MainView.swift b/JUDA_iOS/JUDA/View/Main/MainView.swift index 770adbf4..08db196c 100644 --- a/JUDA_iOS/JUDA/View/Main/MainView.swift +++ b/JUDA_iOS/JUDA/View/Main/MainView.swift @@ -19,11 +19,11 @@ struct MainView: View { ScrollView { VStack(alignment: .leading, spacing: 20) { // 날씨와 어울리는 술 + 안주 -// WeatherAndFood() + WeatherAndFood() // 오늘의 술장 Top3 -// DrinkTopView() + DrinkTopView() // 오늘의 술상 Top3 -// PostTopView() + PostTopView() } .padding(.bottom, 15) } diff --git a/JUDA_iOS/JUDA/View/Mypage/AuthenticatedMypageView.swift b/JUDA_iOS/JUDA/View/Mypage/AuthenticatedMypageView.swift index 8912e7f1..06c42135 100644 --- a/JUDA_iOS/JUDA/View/Mypage/AuthenticatedMypageView.swift +++ b/JUDA_iOS/JUDA/View/Mypage/AuthenticatedMypageView.swift @@ -28,6 +28,9 @@ struct AuthenticatedMypageView: View { .font(.medium16) .foregroundStyle(.mainBlack) } + .task { + recordViewModel.recordPostDataClear() + } } .padding(.horizontal, 20) .padding(.top, 20) @@ -70,7 +73,6 @@ struct AuthenticatedMypageView: View { .foregroundStyle(.mainBlack) .onAppear { appViewModel.tabBarState = .visible - recordViewModel.recordPostDataClear() Task { await authViewModel.startListeningForUserField() } diff --git a/JUDA_iOS/JUDA/View/Posts/PostsView.swift b/JUDA_iOS/JUDA/View/Posts/PostsView.swift index 9f768290..42e6aec1 100644 --- a/JUDA_iOS/JUDA/View/Posts/PostsView.swift +++ b/JUDA_iOS/JUDA/View/Posts/PostsView.swift @@ -99,6 +99,9 @@ struct PostsView: View { // 비로그인 상태일 때 네비게이션링크 비활성화 .opacity(authViewModel.signInStatus ? 1.0 : 0.3) .disabled(!authViewModel.signInStatus) + .task { + recordViewModel.recordPostDataClear() + } } .padding(.horizontal, 20) // 인기 or 최신 탭뷰 @@ -193,7 +196,6 @@ struct PostsView: View { } .onAppear { appViewModel.tabBarState = .visible - recordViewModel.recordPostDataClear() } } .environmentObject(navigationRouter) diff --git a/JUDA_iOS/JUDA/View/Record/RecordView.swift b/JUDA_iOS/JUDA/View/Record/RecordView.swift index b15cd88d..777dfb89 100644 --- a/JUDA_iOS/JUDA/View/Record/RecordView.swift +++ b/JUDA_iOS/JUDA/View/Record/RecordView.swift @@ -112,7 +112,7 @@ struct RecordView: View { } DispatchQueue.main.async { Task { -// guard let user = authViewModel.currentUser else { return } + guard let user = authViewModel.currentUser else { return } switch recordType { case .add: // post images upload, post upload diff --git a/JUDA_iOS/JUDA/ViewModel/Posts/PostViewModel.swift b/JUDA_iOS/JUDA/ViewModel/Posts/PostViewModel.swift index d04f0619..7cf74ec5 100644 --- a/JUDA_iOS/JUDA/ViewModel/Posts/PostViewModel.swift +++ b/JUDA_iOS/JUDA/ViewModel/Posts/PostViewModel.swift @@ -106,6 +106,7 @@ extension PostViewModel { // Post 데이터 받아오기 private func fetchPosts(querySnapshots: QuerySnapshot) async { var tasks: [Task<(Int, Post)?, Error>] = [] + for (index, document) in querySnapshots.documents.enumerated() { let task = Task<(Int, Post)?, Error> { do { diff --git a/JUDA_iOS/JUDA/ViewModel/Record/RecordViewModel.swift b/JUDA_iOS/JUDA/ViewModel/Record/RecordViewModel.swift index e2fbe925..080fd20c 100644 --- a/JUDA_iOS/JUDA/ViewModel/Record/RecordViewModel.swift +++ b/JUDA_iOS/JUDA/ViewModel/Record/RecordViewModel.swift @@ -113,7 +113,7 @@ final class RecordViewModel: ObservableObject { // MARK: - FireStroage post 이미지 업로드 및 이미지 URL 받아오기 func uploadMultipleImagesToFirebaseStorageAsync() async { -// guard let user = writtenUser else { return } + guard let user = writtenUser else { return } do { // 결과를 받을 배열 생성 var downloadURLs: [(Int, URL)] = [] @@ -124,8 +124,7 @@ final class RecordViewModel: ObservableObject { // 각 이미지 데이터에 대해 비동기 업로드 작업 실행 및 배열에 추가 group.addTask { // storage 폴더링을 위한 userID -// let userID = user.userID - let userID = "sampleUserID" + let userID = user.userID // image fileName 생성 let imageID = UUID().uuidString // storage에 이미지 업로드 @@ -187,7 +186,6 @@ final class RecordViewModel: ObservableObject { // MARK: - Firestore drink 업데이트 func updateDrinkToFirestore() async { guard let user = writtenUser else { return } - print("writtenUser 정보가 있다...????: ", user) do { let drinkRef = db.collection("drinks") for drinkTag in drinkTags {