タグ

observableに関するswfzのブックマーク (4)

  • RxのHotとColdについて - Qiita

    UniRxについての記事のまとめはこちら RxのIObservable<T>にはHot/Coldという大きな2つの特徴があります。 これら性質を理解しないままストリームを設計すると、意図した動作をしてくれない場合があります。 今回はこのHot/Coldの性質について簡単にまとめたいと思います。 概要 一言で言うと? Cold : ストリームの前後をつなぐだけのパイプ。単体では意味が無い。だいたいのオペレータはこっち。 Hot : ストリームから値を発行し続ける蛇口。常に垂れ流し。後ろにパイプがたくさん接続できる。 細かく説明すると Cold Observable 自発的に何もしない受動的なObservable Observerが登録されて(Subscribeされて)初めて仕事を始める ストリームの前後をただつなぐだけ。ストリームを枝分かれさせる機能は無い。 Hot Observable 自

    RxのHotとColdについて - Qiita
  • 【Reactive Extensions】 Hot変換はどういう時に必要なのか? - Qiita

    UniRxについての記事のまとめはこちら 以前、RxのHotとColdについてでObservableのColdとHotという性質について説明しました。 今回はより具体的に、どういうシチュエーションでHot変換をするべきかを説明したいと思います。 Hot変換するべきポイント いろいろシチュエーションはありますが、一番Hot変換が重要となるシチュエーションは1つのストリームを複数回Subscribeする場合です。実際のコードを見ながら説明したいと思います。 例)入力された文字列が特定キーワードに一致するか調べる Hot変換が必要な例として、「入力されたキー入力を監視して4文字の特定のキーワードが入力されたかを調べるストリーム」を作ってみます。 準備 まずはその準備として入力されたキー情報を4文字ずつにまとめるストリームを作ります。 var keyBufferStream = Observabl

    【Reactive Extensions】 Hot変換はどういう時に必要なのか? - Qiita
  • RxJSのconcatMap, mergeMap, switchMapの違いを理解する(中級者向け) - Qiita

    (2021/06/02 update: RxJS 7 対応) ちきさんです。趣味はRxの再実装です。 さてRxJSの数あるオペレーターの中でも3大謎オペとして知られるconcatMap, mergeMap, switchMapについてお勉強しましょう。 (これらのオペレーター以前の段階で躓いている方にはちょっと難しい内容かもしれません) この中でもよく使われるのはmergeMap(flatMap)かなと思いますのでとりあえずはこれを中心に話を進めていきます。 mergeMapの極意1 ~新たなストリームを生み出す~ mergeMapの第一の特徴は、引数の値を使って新たなObservableを生成できるという点です。 例えば、 const { of } = rxjs of(5) .subscribe(value => { console.log(value) })

    RxJSのconcatMap, mergeMap, switchMapの違いを理解する(中級者向け) - Qiita
  • Rx逆引き

    RxのObservableに関するオペレータやその他もろもろに関する逆引きです。 基的にRxJS+αなので、各実装でどういう名前になっているかはドキュメントを参照してください メモ: メッセージ=ストリームから飛んでくる値のこと。イベント=メッセージが飛んでくる+onComplete/onError。ストリーム=Observable。RxJSはPromiseもそのままストリームとして扱えることが多い。 Observableのオペレータ 生成 したいことオペレータ名備考

  • 1