【发布时间】:2018-08-19 03:44:34
【问题描述】:
这里是 RxSwift 的新手。我有一个(MVVM)视图模型,它代表一个类似新闻源的页面,订阅数据模型属性更改的正确方法是什么?在以下示例中,startUpdate() 不断更新post。计算出的属性 messageToDisplay 和 shouldShowHeart 驱动一些 UI 事件。
struct Post {
var iLiked: Bool
var likes: Int
...
}
class PostViewModel: NSObject {
private var post: Post
var messageToDisplay: String {
if post.iLiked { return ... }
else { return .... }
}
var shouldShowHeart: Bool {
return iLiked && likes > 10
}
func startUpdate() {
// network request and update post
}
...
}
在我看来,为了使整个事情具有反应性,我必须将Post 的每个属性和所有计算属性都转换为Variable?我觉得不太对劲。
【问题讨论】: