RxConveniences 2.1.0

RxConveniences 2.1.0

Greg Pape 维护。



 
依赖关系
CollectiveSwift~> 2.1
RxCocoa~> 5.0
RxSwift~> 5.0
 

  • 作者
  • Greg Pape

RxConveniences

RxSwift 的一组小便利函数,旨在提高使用时的清晰度。

查看示例项目了解一些演示。

额外的绑定

添加更多对常用属性的响应式绑定,例如 UIView.tintColor

集合绑定

扩展 CollectiveSwift,为常见对象的集合提供响应式绑定。结合从故事板中获取的릿 outlet 集合,您可以用少量的代码做很多事情。例如

.bind(to: labels.all.rx.textColor, tintableViews.all.rx.tintColor, ...)

操作符和实用工具

我经常制作一些类似杂乱的小可观察映射。例如

booleanSource.map { !$0 }

Observable.combineLatest(left, right).map { $0.0 || $0.1 }

typedSource.map { _ in () }.bind(to: voidObserver)

但这些可以变得更清晰

(!booleanSource)

(left || right)

typedSource.trigger(voidObserver)

对于具有明确类型输出的控件(如按钮(Void)、开关(Bool)和滑块(Float)),我们可以直接绑定和映射它们。例如,slider.bind(to:)可能和slider.rx.value.bind(to:)一样清晰。

您可能会喜欢,例如,slider.rx.bind(to:),这同样也是可用的。如果您对某一方有更强烈的偏好,请告诉我!

单行按钮按下效果

可用于按钮的一个好功能

button.addPressEffect().disposed(by: ...)

...还有更多!

许可证

MIT