Skip to content

Feature/#346 프로필 링크 추가, 편집, 삭제 연결#347

Merged
wngus4296 merged 10 commits intodevelopfrom
feature/#346-profile-edit-link
Sep 6, 2024
Merged

Feature/#346 프로필 링크 추가, 편집, 삭제 연결#347
wngus4296 merged 10 commits intodevelopfrom
feature/#346-profile-edit-link

Conversation

@wngus4296
Copy link
Copy Markdown
Collaborator

작업한 내용

  • 프로필 편집에서 링크 추가, 수정, 삭제로 가는 흐름을 연결했습니다.
  • 링크 저장, 수정, 삭제 api를 연결했습니다. 따로 api가 있는 것이 아닌 프로필 편집 patch api를 같이 쓰고 있어서 profileEntity를 만들어서 해당 entity를 주고 받는 형식으로 구현했습니다.
struct ProfileEntity {
    let profileImageURL: String
    let nickname: String
    let introduction: String
    var links: [LinkEntity]
}
  • 링크 추가, 수정, 삭제 토스트 분기처리를 했습니다.
  • 프로필 편집 중 (닉네임이나 소개, 프로필 사진) 링크 edit view를 다녀왔을 때 수정중이던 데이터가 남아있도록 하기 위해서 viewDidLoad와 viewWillAppear event에 따라 fetch되는 데이터가 다르도록 구현했습니다.
  • editview에서 textField의 isEmpty값에 따라 네비게이션바의 완료 버튼 활성화가 변경되는 로직을 구현했습니다.
 Observable.combineLatest(self.linkNameTextField.rx.text,
                           self.URLTextField.rx.text)
  .map { linkName, url in
      guard let title = linkName,
            let link = url else { return false }
      return !title.isEmpty && !link.isEmpty
  }
  .asDriver(onErrorJustReturn: false)
  .drive(with: self) { owner, isEnabled in
      owner.navigationBar.completeButton.isEnabled = isEnabled
  }
  .disposed(by: self.disposeBag)
  • editview에서 textField의 isEmpty값에 따라 옆에 있는 removeButton isHidden 로직을 수정했습니다.
  • editView에서 textField값을 코드로 직접 넣어줄 때 이벤트가 안먹는 오류를 수정했습니다.
owner.linkNameTextField.text = ""
owner.linkNameTextField.sendActions(for: .editingChanged)

스크린샷

RPReplay_Final1725639252.MP4
RPReplay_Final1725639532.MP4
RPReplay_Final1725639551.MP4

관련 이슈

@wngus4296 wngus4296 added the 1.6.3 label Sep 6, 2024
@wngus4296 wngus4296 self-assigned this Sep 6, 2024
@wngus4296 wngus4296 merged commit 5a39b6a into develop Sep 6, 2024
@wngus4296 wngus4296 deleted the feature/#346-profile-edit-link branch September 6, 2024 16:38
@wngus4296 wngus4296 mentioned this pull request Sep 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] 프로필 편집 ~ 링크 수정 뷰 연결

1 participant