iOS/RxSwift(4)
-
[RxSwift] Combining Operator
startsWith Observable 시퀀스 앖에 다른 값 하나를 추가해준다 let disposeBag = DisposeBag() let numbers = Observable.of(2,3,4) let observable = numbers.startWith(1) observable.subscribe(onNext: { print($0) }).disposed(by: disposeBag) // 1 // 2 // 3 // 4 concat startWith와 비슷하다. startWith는 하나의 요소가 맨 앞에 추가되지만, concat은 여러 개의 요소가 앞 뒤로 추가 가능하다. let first = Observable.of(1,2) let second = Observable.of(4,5) let observab..
2020.04.25 -
[RxSwift] Transforming Operator
toArray completed가 된 시점 까지의 데이터를 array로 바꿔서 emit한다. Observable.of(1,2,3,4,5) .toArray() .subscribe(onSuccess: { print($0) }) // [1, 2, 3, 4, 5] 영상에는 .toArray()가 Observable인데 RxSwift 5.0부터는 Single로 바뀐 듯 하다. 그래서 .subscribe(onNext: ) 가 안됨.. map swift에서 사용하는 map과 같다. 다른 것이 있다면 observable하게 작동한다는 점? Observable.of(1,2,3,4,5) .map { return $0 * 2 }.subscribe(onNext: { print($0) }).disposed(by: disposeB..
2020.04.18 -
[RxSwift] Filtering Operator
filtering Operator를 이용하면 .next이벤트에 조건부 제약 조건을 적용해 처리하고자 하는 요소만 받을 수 있도록 할 수 있다. ignore .next event는 무시한다. .error이나 .complete는 전달한다.(종료되는 시점만 알 수 있음) let strikes = PublishSubject() let disposeBag = DisposeBag() strikes .ignoreElements() .subscribe { _ in print("[Subsscription is called]") }.disposed(by: disposeBag) strikes.onNext("A") strikes.onNext("B") strikes.onNext("C") strikes.onCompleted() ..
2020.04.07 -
[RxSwift] Observable & Subject
Observable Observable → 관찰 가능한, 관찰할 수 있는 하나의 Sequence(수열)이며 async하다. Observable이 이벤트를 발생 시키는 것을 emit한다고 표현한다. RxMarbles: Interactive diagrams of Rx Observables 이건 그냥 참고 자료. just, of, from just - 하나의 파라미터를 받아 하나의 이벤트를 발생 시킨다 of - 파라미터의 타입을 전달, 배열이라면 배열 자체를 전달하는 것 from - 배열 타입을 전달받아 배열 안에 있는 요소들을 꺼내 sequence를 생성한다. (array, dictionary, set포함) 타입이 다른 요소를 넣을 경우 error 타입 추론을 Any로 한다면 된다. let observabl..
2020.04.02