web-dev-qa-db-ja.com

rxjs5でBehaviorSubjectの現在の値を取得する簡単な方法

以前はrxjs4で、BehaviorSubjectにgetValue()doc here )というメソッドがありました。

このメソッドはrxjs5にはもう存在しません。

したがって、BehaviorSubjectの値を取得するために私が見つけた唯一の解決策は次のとおりです。

_let value;
myBehaviorSubject.take(1).subscribe( (e) => value = e );
_

このコードは同期的に実行され(理由は正確にはわかりませんが、...)、値を取得します。動作しますが、getValue()が存在する場合ほどきれいではありません。

_let value = myBehaviorSubject.getValue();
_

rxjs5getValue()が削除された理由と、この問題の最もクリーンな解決策は何ですか?

30
Clement

コメントでartur grzesiakが指摘したように、BehaviorSubjectインターフェイスはクリーンアップされ、ゲッターは.valueになりました。

元の質問へのコメントをほとんど読んでおらず、正解を逃していたため、これを回答として追加したかっただけです。

54
Tyson Phalp