왜?

chatViewModel에서 sendButton을 Tap 했을 때 chatUseCae의 내 정보 호출 메서드와 입력창의 텍스트를 같이 받아와야 했다.

처음 무작정 CombineLatest로 sendButton, myProfile, inputText를 같이 묶어주었더니 sendButton을 눌렀을 때 뿐만 아니라 텍스트를 칠 때마다도 같이 호출이 되는 오류가 발생했다.

따라서, RxSwift에서 여러 개의 이벤트가 함께 묶어서 처리하는 메서드들에 대한 학습을 하고 시기적절하게 잘 섞어 사용할 수 있도록 공부하고자 한다.

withLatestFrom

첫 번째 Observable에서 아이템이 방출될 때마다 두 번째 Observable의 최신 아이템과 결합해서 방출한다.

Untitled

주의할 점은

이 메서드는 검색을 할 때 유용하게 사용될 수 있을 것 같다.

예를 들어, 검색 버튼 Tap을 withLatestFrom으로 검색창 내용을 함께 묶어준다면 좋을 것이다.

SearchButtonDidTap
    .withLatestFrom(SearchBarText)

주의할 점은 처음에 내용을 입력하지 않은 채로 탭을 눌렀을 때 Empty를 처리를 해 주어야 한다.