0
我試圖加載縮小的預覽圖像,然後是僱用圖像。我想確保如果有任何機會,僱用圖像首先加載,預覽圖像被丟棄。用ReactiveX逐行圖像加載
考慮以下示例,其中:
- 序列1是預覽圖像請求
- 序列2是員工圖像請求
- 序列3是組合的序列
- 序列4是所得圖像渲染序列
。
Example 1:
1 ------P-------
2 ---------H----
3 ------P--H----
4 ------*--*----
Example 2:
1 ----H---------
2 --------P-----
3 ----H|--------
4 ----*|--------
唯一的解決辦法,我拿出這麼遠的保存狀態變量,它表示是否聘用已被使用takeWhile
加載,但是這需要一些非典雅操作,也涉及副作用。
我正在尋找正確的RX方式來做到這一點。
完美地工作。爲什麼需要'share()'? – Shahar
因爲否則你會訂閱兩次你不想要的hiresObservable,共享'多播'你的Observable,所以多個訂閱會看到相同的值,實際上你可能需要更加小心,並使用其他'多播'操作符來防止種族(例如,如果你僱用有緩存),你可以在這裏閱讀我的解釋:http://stackoverflow.com/a/42826568/3903847 – yosriz