我正在使用reactivesWift创建一个包含字典的结构。我想听字典中的更改。
struct Model {
let a: MutableProperty<[String: Int]> = MutableProperty([:])
}
但是,我很难理解如何将此属性绑定到听众。我想做类似的事情:
textView.reactive.text <~ model.a["key"]
是否有解决词典在可变属性中的解决方案?
仅使用Mutable Property相关值(在您的情况下,字典)能够束缚在绑定目标上,而不是字典中的值。这意味着您无法将<~
运算符在字典中的值上使用。您需要做类似的事情:
model.a.producer.startWithValues { [weak textView] value in
textView?.text = value["key"]
}
,或者您可以这样做:
textView.reactive.text <~ model.a.map { $0["key"] }