/
moreqqq
/
DeliveryService
Обзор
Документация
Войти
/
moreqqq
/
DeliveryService
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
server/node_modules/rxjs/src/internal/BehaviorSubject.ts
37 строк
880 B
moreqqq
написал приложение
29 май 2026, 22:02
29 май 2026, 22:02
ad51790
Код
Авторство
О чём код?
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)); } }