私はRxJSを初めて使っています。私はちょうど.filter
と.map
私が探している変更を得るために観察できることを知っています。しかし、2つを1つの関数に組み合わせる方法はありますか?地図とフィルターを組み合わせたRX方式はありますか?
答えて
はいあります。
FlatMap。
Observable of numbers(1,2,3,4,5、...)があり、偶数をフィルタリングしてx * 10にマッピングしたいとします。
var tenTimesEvenNumbers = numbers.flatMap(function (x) {
if (x % 2 === 0) {
return Rx.Observable.just(x * 10);
} else {
return Rx.Observable.empty();
}
});
答えをありがとう - 私はあなたがフラットマップ上のドキュメントからこれを行うことができるとは決して認識しませんでした。私は@ paulpdaniels答えを選択していますが、それはより機能的です。 –
あなたはどんな意味でもっと機能的な意味ですか? –
この例では、フィルター操作は 'if'ステートメントの括弧で行う必要があります。操作に何度も適用したい共通のフィルタ関数を持っているとしますが、それでもやることはできますが、複数のif()文を書くことになります。さらに、毎回それを呼び出す必要があります。 フィルタとマップ関数を別々の引数として渡すことができる解決策がある方がはるかにクリーンです。私の考えでは、そのようなコーディングスタイルを可能にする解決策はより機能的です。 –
いいえありません。
しかし、1つを追加するのは簡単です。
Rx.Observable.prototype.filterMap = function (filterFn, selectorFn, context) {
return this.filter(filterFn, context)
.map(selectorFn, context);
}
ありがとうございます。私はこのようなものを加えることを避けたいと考えていましたが、将来的には時間の節約になるかもしれません。 –
- 1. 地図:地域とマーカーを組み合わせる
- 2. VLOOKUPとフィルターを組み合わせる
- 3. RSpecフィルターを組み合わせる?
- 4. フィルター文字の組み合わせ
- 5. リストを地図と組み合わせるためのJava 8の最適化
- 6. 組み合わせたRxシングルは、再帰的に
- 7. AWS SQSとSESの組み合わせはありますか?
- 8. 組み合わせ式
- 9. セルを組み合わせたクエリ式
- 10. スイッチケースを組み合わせる方法がありますか?
- 11. UWPでフォルダピッカーとファイルピッカーを組み合わせる方法はありますか?
- 12. RxJava - スキャンとフラットマップを組み合わせる方法はありますか?
- 13. 関数kbhit()とgetch()を組み合わせた関数はありますか?
- 14. プロパティパスにラムダ式を組み合わせ
- 15. 式を組み合わせて選択
- 16. .net上でforeachsを組み合わせる方法はありますか?
- 17. リキベースにチェンジセットを組み合わせる方法はありますか?
- 18. このC#コードを組み合わせる方法はありますか?
- 19. 行同士を組み合わせる方法はありますか?
- 20. Qt-Creator + Boost Libraryを組み合わせる方法はありますか?
- 21. リストの中にインデックスを組み合わせる方法はありますか
- 22. 複数のFileFiltersを組み合わせる方法はありますか?
- 23. ヒートマップと樹状図を組み合わせてプロットする
- 24. ビン地図はピンとピンチを合わせます
- 25. 先進的な機能と複数の機能を組み合わせた機能を組み合わせたコントロールはありますか? B
- 26. Kenticoカスタムテーブルクエリまたは組み合わせ
- 27. jQueryとGoogleアナリティクスの読み込みを組み合わせる方法はありますか?
- 28. wgetとPHPを組み合わせた
- 29. 図をサブプロットと組み合わせて1つの図形にする
- 30. yadcf Datatableでオートコンプリートとフィルター検索を組み合わせるには?
振り返ってみると、フィルタとマップを1回の操作として試してみる理由はほとんどありません。他の誰かが「RxJSの初心者」であり、私の質問がある場合は、これらの回答を取ってはいけません。ちょうどフィルタリングして、マップしてください。 –