Buckets:
| import { Subject } from './Subject'; | |
| import { Subscriber } from './Subscriber'; | |
| import { Subscription } from './Subscription'; | |
| /** | |
| * A variant of Subject that requires an initial value and emits its current | |
| * value whenever it is subscribed to. | |
| */ | |
| export class BehaviorSubject<T> extends Subject<T> { | |
| constructor(private _value: T) { | |
| super(); | |
| } | |
| get value(): T { | |
| return this.getValue(); | |
| } | |
| /** @internal */ | |
| protected _subscribe(subscriber: Subscriber<T>): Subscription { | |
| const subscription = super._subscribe(subscriber); | |
| !subscription.closed && subscriber.next(this._value); | |
| return subscription; | |
| } | |
| getValue(): T { | |
| const { hasError, thrownError, _value } = this; | |
| if (hasError) { | |
| throw thrownError; | |
| } | |
| this._throwIfClosed(); | |
| return _value; | |
| } | |
| next(value: T): void { | |
| super.next((this._value = value)); | |
| } | |
| } | |
Xet Storage Details
- Size:
- 880 Bytes
- Xet hash:
- 76bb7329653eb4d774040957981c1844b8de98d871a768c624936e6e2ab9b45c
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.