我正在使用 ReactiveKit 和他们的 Bond 扩展,我真的不知道如何做一些感觉很基础的事情。
假设我的应用中有一个用户模型。像这样的东西。
class User: Codable {
var id: String
var firstName: String?
var avatar: String?
}
内容来自远程 API,通过使其向 Codable 确认一切正常且简单。
但是,例如,我想从模型属性到某个 UI 状态的双向绑定;这是不可能的,因为我的所有属性都没有证实BindableProtocol
. 或者,如果我想观察模型属性的变化,这当然也不可能。
所以我的问题是:如何在不破坏现有用户模型和行为的情况下将模型属性转换为实际的可观察属性?例如,它仍然需要是 Codable。我是否要创建第二个ObservableUser
类,然后在User
模型的所有属性中设置 didSet 以将更改写入ObservableUser
? 和类似的东西ObservableUser
写回User
?这似乎很可怕,希望不是重新开始的前进方式。