ReactiveFoundation 1.0.4

ReactiveFoundation 1.0.4

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布最新发布2015 年 11 月
SPM支持 SPM

Srdan Rasic 维护。



  • 作者
  • Srdan Rasic

ReactiveFoundation

ReactiveFoundation 是 ReactiveKit 集合框架中的一个框架,它扩展了 NSObject 对象以支持类型安全的 KVO 并为 NSNotificationCentar 提供了反应式观察机制。请参阅 ReactiveKit 文档以了解如何使用它提供的 Observables。

键值观察(KVO)

let user = ObjCUserClass()

user.rValueForKeyPath("name").observe { (name: String?) in
  print(name)
}.disposeIn(rBag)

user.rValueForKeyPath("name").bindTo(nameLabel.rText)

只要返回的 disposable 仍然存在,观察 KVO-observable 就会活跃。请确保在使用 KVO-observable 上的 observe 方法时存储 disposable。在使用 bindTo 方法时不需要存储 disposable。当可绑定目标(即视图)被释放时,绑定会自动销毁。

NSNotificationCenter

NSNotificationCenter.defaultCenter().rNotification("MyNotification").observe { notification in
  print("Did receive notificaton \(notification).")
}.disposeIn(rBag)

确保当观察不再需要时总是释放观察。一个简单的方法是将 disposable 放到启动观察的对象的 disposable bag 上。

rBag

dispose bag 由 NSObject 及其所有子类提供,并且当对象被释放时会进行销毁。请使用此方法来清理您的观察。

安装

许可协议

MIT 许可协议 (MIT)

版权所有 © 2015 Srdan Rasic (@srdanrasic)

特此授予任何获得此软件及其相关文档文件(以下简称“软件”)副本的任何人,免费使用、复制、修改、合并、出版、分发、再许可或出售软件副本的许可,并允许向该软件提供的人同样这样做,但需遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“本软件原样提供”,不对任何形式的通知或暗示做出任何保证,包括但不限于对适销性、对特定目的的适用性和非侵犯性的保证。在任何情况下,作者或版权所有者都不承担任何责任,包括但不限于因合同、侵权或任何其他行为而引起的损害赔偿或其他责任,这些损害赔偿或其他责任源于或与软件的使用或任何其他处理有关,或与之有关。