Project/[release] iOS - MyInventory

[iOS_MyInventory] 상품등록, RxSwift 사용해 보기 - 2

고양이의시간 2020. 6. 18. 02:25

Subject

  • BehaviorSubject :  디폴트값이 있음. 데이터가 발생하면  외부에서 그 데이터를 넣어줄 수 있고 subscribe 할 수도 있다
    (다른애가 subscribe 할 수 있다 === observable)
    외부에서 통제하는 Observable 을 만들어 낼때 사용.
  • PublishSubject : 디폴트 값이 없음. 데이터가 발생하면 그때 subscribe 한 애들에게 전달
  • replay : subscribe 하면, 여태까지 발생했던 모든 데이터 전달
  • async : subject가 끝나는 시점에 전달이 됨
let idOb = BehaviorSubject<String> = BehaviorSubject(value: "")

 

 

subscribe()

발생한 데이터를 받을 수 있다

 

 

combine

옵저버블을 결합해서 하나의 스트림으로 만들 수 있다

 

 

상품 저장버튼 활성화

필수값인 제품이름, 만료날짜를 체크하여, 둘다 값이 있을때만 [저장] 버튼을 활성화