RxSwift) RxCocoa란?
RxCocoa 란?
RxCocoa란 기존 Cocoa Framework에 Rx기능을 합친 RxSwift기반의 라이브러리다.
RxSwift와 별도로 추가해주어야 사용할 수 있다.
RxCocoa는 단방향성을 갖고 있다.
Producer는 값을 생성하고, Consumer는 값을 처리
ObserverType, ObservableType
ObserverType: 값을 주입시킬 수 있는 타입
ObservableType: 값을 관찰할 수 있는 타입
ControlProperty
Subject 같이 프로퍼티에 새 값을 주입시킬 수 있고(ObserverType) 값의 변화도 관찰할 수 있는 타입(ObservableType).
ControlProperty는 ControlPropertyType을 준수하고, ControlPropertyType은 ObservableType과 ObserverType을 준수한다.
/// Protocol that enables extension of `ControlProperty`.
public protocol ControlPropertyType : ObservableType, ObserverType {
/// - returns: `ControlProperty` interface
func asControlProperty() -> ControlProperty<Element>
}
아래 예시와 같이 textField의 text는 값을 관찰해서 가져올 수도, 새로운 값을 넣어줄 수도 있다.
extension Reactive where Base: UITextField {
/// Reactive wrapper for `text` property.
public var text: ControlProperty<String?> {
value
}
}
Binder
ObserverType을 따름. 값을 주입시킬 수는 있지만, 값을 관찰할 수는 없음.
또한 Error를 받을 수 없으며 Error를 받으면 fatalError를 발생시킴
예를 들면 Button의 text는 subscribe할 수 없지만 bind 할 수 있다.
Author And Source
이 문제에 관하여(RxSwift) RxCocoa란?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hansangjin96/iOS-RxCocoa란저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)