首页 > 解决方案 > 如何在 Rx.NET 和 UniRx 中编写 SelectManyLatest 运算符

问题描述

SelectManyLatest是必要的运算符。但是所有互联网都没有回答您如何编写它。又怎样?

SelectManyLatestFlatMapLatest其他 Rx 框架中的一个。该运算符喜欢SelectMany,但如果发生新的发射,它会完成先前的订阅。

标签: c#unity3drx.netunirx

解决方案


添加为扩展

public static IObservable<V> SelectManyLatest<T, V>(this IObservable<T> source, Func<T, IObservable<V>> selector)
{
    return source
        .Select(selector)
        .Switch();
}

推荐阅读