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盒中有各種工具可以應用於這個問題。 –