理解rxjava中的compose
一.compose基本概念及使用
引入:
- 1
- 2
如果我们相对多个流重复利用一系列操作符该怎么办?
一种方式是,提取一个工具方法,把复用的地方抽取成一个方法applySchedulers。
- 1
- 2
另外一种方法就是使用compose. compose常和Transformers。
Transformers
- 1
- 2
- 3
- 4
换句话说就是提供给他一个Observable它会返回给你另一个Observable,这和lift等操作符有着同等功效。
例如:
定义一个Transformers。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
好处在于:
1.实现一系列操作符的复用
2.不破坏链式调用的结构
二.和flatmap的区别
- 1
- 2
- 3
- 4
- 5
- 6
- 7
三.应用场景示例
可参考rxlifecycle绑定生命周期的时候就是使用的compose方法来复用一些处理逻辑。