1
我想在Swift中想出一个简单的可观察对象,并认为使用RxSwift。我无法找到一个简单的例子,做这样的事情:简单的可观察结构与RxSwift?
protocol PropertyObservable {
typealias PropertyType
var propertyChanged: Event<(PropertyType, Any)> { get }
}
class Car: PropertyObservable {
typealias PropertyType = CarProperty
let propertyChanged = Event<(CarProperty, Any)>()
dynamic var miles: Int = 0 {
didSet {
propertyChanged.raise(.Miles, oldValue as Any)
}
}
dynamic var name: String = "Turbo" {
didSet {
propertyChanged.raise(.Name, oldValue as Any)
}
}
}
以上是从this blog post观测纯迅速解决;我真的很喜欢它是基于协议的解决方案,而不是侵入式的。在我的情况下,我在我的项目中有一个对象,每个属性在引擎盖(蓝牙设备)下异步设置。所以我需要观察/订阅更改,而不是实时获取/设置属性。
我一直听说RxSwift会做到这一点和更多。但是,我找不到一个简单的例子来匹配上面的内容,并开始认为RxSwift对于我的需求是过度的?谢谢你的帮助。
这将是可能更好,如果您发布的实际代码来自项目的对象,并展示如何设置其属性。 RxSwift盒中有各种工具可以应用于这个问题。 –