RxCocoa 实战:从数据绑定到性能优化
1. 数据绑定基础
在开发应用时,我们常常需要将从服务器获取的数据正确显示在界面上。目前,应用已经能够正确显示从服务器获取的数据,并且已经使用了一些 RxCocoa 的特性。不过,当我们深入探索 RxCocoa 的高级特性时,才能真正体会到它的强大之处。
这里有一个小实验:如果移除 flatMap 内部的 catchErrorJustReturn 操作符,当输入无效的城市名称导致收到 404 错误(可以在日志中看到)时,应用将无法正常工作,因为可观察对象出错并被释放了。
1.1 绑定可观察对象
绑定在某些方面存在争议。例如,苹果从未在 iOS 上发布其名为 Cocoa Bindings 的绑定系统,尽管它在 macOS 中已经存在很长时间且非常重要。Mac 绑定功能强大,但与 macOS SDK 中苹果提供的特定类耦合度较高。
RxCocoa 提供了一种更简单的解决方案,它仅依赖于框架中包含的几种类型。如果你已经熟悉 RxSwift 代码,那么掌握绑定应该不会有太大问题。
在 RxCocoa 中,绑定是一种单向数据流,这极大地简化了应用中的数据流动。因此,我们不会涉及双向绑定。
要理解绑定,最简单的方法是将其看作两个实体之间的连接:
- 生产者 :产生值。
- 消费者 :处理生产者产生的值。
消费者不能返回值,这是使用 RxSwift 绑定时的一般规则。
绑定的
超级会员免费看
订阅专栏 解锁全文
40

被折叠的 条评论
为什么被折叠?



