Simple way to get the current value of a BehaviorS

2019-04-17 22:37发布

问题:

Previously in rxjs4 there was a method in the BehaviorSubject called: getValue() (doc here).

This method does not exist any more in rxjs5.

So the only solution that I found to get the value of a BehaviorSubject was:

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

This code run synchronously (I do not exactly understand why, but it does ...) and get the value. It work, but it's not as clean as it could be if getValue() was present:

let value = myBehaviorSubject.getValue();

Why getValue() was removed in rxjs5 and what's the cleanest solution to this problem?

回答1:

As was pointed out by artur grzesiak in the comments, the BehaviorSubject interface was cleaned up, and the getter is now just .value.

I just wanted to add this as an answer because I almost didn't read the comments to the original question, and would have missed the correct answer.