以下の内容はhttps://mochimoffu.hateblo.jp/entry/2018/04/18/235349より取得しました。


UniRxの話~DistinctUntilChangedとSkip~

キーワードは、初回にSubscribeさせたくない時。

以下のコードがある。想定したい挙動は、何も表示されないだ。
countの変更をどこにも書いていないからである。

int count = 0;
this.UpdateAsObservable()
    .Select(_ => count)
    .DistinctUntilChanged()
    .Subscribe(_ => Debug.Log("Count:" + count));

しかし、実際は、ばっちりログに0と表示される。

なので、初回のSubscribeを止めたい時は、Skipという物を使うと行けるっぽい。

int count = 0;
this.UpdateAsObservable()
    .Select(_ => count)
    .DistinctUntilChanged()
    .Skip(1)// ここに追加。
    //.Where(x => x)
    .Subscribe(_ => Debug.Log("Count:" + count));

これで、呼び出されなくなった。
もっといいやり方があるのかもしれないけど、とりあえず使う分にはこんなところだろうか。




以上の内容はhttps://mochimoffu.hateblo.jp/entry/2018/04/18/235349より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14