c# - 如何在 Rx.NET 和 UniRx 中编写 SelectManyLatest 运算符
问题描述
SelectManyLatest
是必要的运算符。但是所有互联网都没有回答您如何编写它。又怎样?
SelectManyLatest
是FlatMapLatest
其他 Rx 框架中的一个。该运算符喜欢SelectMany
,但如果发生新的发射,它会完成先前的订阅。
解决方案
添加为扩展
public static IObservable<V> SelectManyLatest<T, V>(this IObservable<T> source, Func<T, IObservable<V>> selector)
{
return source
.Select(selector)
.Switch();
}
推荐阅读
- java - 带有二进制的数组,找到 1 的位置并将 1 的索引作为子集输出
- iis - 将代理属性注入 HTTP 标头
- node.js - 如何让类星体发送带有多部分/表单数据的大文件?
- d3.js - 如何在折线图d3.js v3.5.6的x轴中使用字符串值
- php - 在 php 中动态创建子域(cpanel & hosting24)
- c++ - 出现错误:从“int”到“std::ios_base::openmode”的无效转换
- javascript - 如何使用 Cloud Function 删除节点?
- java - 找到变量的最大可接受值的算法
- python - 在 Pyqt5 中单击按钮时如何从动态创建的文本框中获取数据?
- scala - 我怎样才能有咖喱案例类构造函数?