RxSugar 0.1.1

RxSugar 0.1.1

测试测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2016年11月
SwiftSwift 版本3.0
SPM支持 SPM

Mark SandsJames Rantanen维护。



RxSugar 0.1.1

  • James Rantanen、Mark Sands 和 Asynchrony

RxSugar Logo RxSugar

用于与 Apple API 交互的简单 RxSwift 扩展。

改进数据流可视化的算子

observer <~ observable

<~ 将观察者订阅到可观察对象。观察者可以是任何 ObserverTypeVariable(value)->()` 封闭。可观察对象可以是任何 ObservableTypeVariableObservableConvertibleType。此操作符返回一个 Disposable

disposableCollection ++ disposable

++ 将一个 Disposable 添加到一组废弃的集合(DisposeBagCompositeDisposable)中,并返回该集合。

这些算子组合使用可以轻松实现数据流的可视化

static func bindView(view: View, model: Model, selectionHandler:(SearchResult)->()) {
    view.rxs.disposeBag
        ++ view.searchResults <~ model.searchResults
        ++ model.searchTerm <~ view.searchTerm
        ++ selectionHandler <~ view.selectionEvents
}

Foundation / UIKit 扩展

RxSugar 将 Sugar 添加到所有 NSObjects,名称为 rxs。rxs 属性包含许多常见 API 的 RxSwift 绑定。以下是一些例子:

NSObject

object.rxs.disposeBag - 在 deinit 时将被废弃的废弃集合

UIButton

button.rxs.tap - 一个 Observable<Void>,在每次 .TouchUpInside 控制事件时发送一个事件。

UITextField

textField.rxs.text - 一个 ValueBinding<String>,在每次 .EditingChanged 控制事件时发送一个事件并为发送到其上的每个事件设置控制器的文本。

textField.rxs.attributedText - 一个在每次收到 .EditingChanged 控制事件时发送事件并为每个发送到它的每个事件设置控件的 attributedText 的 ValueBinding<NSAttributedString>

UITextView

与 UITextField 相同,但使用 UITextViewTextDidChangeNotification 来驱动事件。

添加您自己的“甜点”

TargetActionObservableValueBinding 为创建与上述示例类似的自定义界面“甜点”提供了基础。