我正在使用Swift Bond與viewModel進行視圖的雙向綁定。這是通過雙向綁定實現的。在Swift Bond中綁定model和viewModel
問題是: 將model與viewModel綁定的一種常見做法,更具體地說,model將如何知道viewModel中所做的更改。在ReactiveCocoa中有RACChannel來做到這一點,所以你可以綁定viewModel和model而不改變模型屬性的類型。
主要目標是保持模型非常簡單,只有基本類型如String,Int,Date和move Observable和Property types to viewModel。
插圖:
import Bond
import ReactiveKit
struct Person {
var name: String
var age: Int
var birthdate: Date
}
struct PersonViewModel {
fileprivate var person: Person
var name: Observable<String>
var age: Observable<Int>
var birthDate: Observable<Date>
init(person: Person) {
self.person = person
// what should go here in order to bind properties???
}
}