我正在使用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???
}
}