RxJS Subject

2020-10-12 16:44 更新

主題是可觀察的一種特殊類型,它允許將值多播到許多觀察者。主題就像 EventEmitters。

  1. class Subject<T> extends Observable implements SubscriptionLike {
  2. static create: Function
  3. constructor()
  4. observers: Observer<T>[]
  5. closed: false
  6. isStopped: false
  7. hasError: false
  8. thrownError: any
  9. lift<R>(operator: Operator<T, R>): Observable<R>
  10. next(value?: T)
  11. error(err: any)
  12. complete()
  13. unsubscribe()
  14. _trySubscribe(subscriber: Subscriber<T>): TeardownLogic
  15. _subscribe(subscriber: Subscriber<T>): Subscription
  16. asObservable(): Observable<T>
  17. // inherited from index/Observable
  18. static create: Function
  19. static if: typeof iif
  20. static throw: typeof throwError
  21. constructor(subscribe?: (this: Observable<T>, subscriber: Subscriber<T>) => TeardownLogic)
  22. _isScalar: boolean
  23. source: Observable<any>
  24. operator: Operator<any, T>
  25. lift<R>(operator: Operator<T, R>): Observable<R>
  26. subscribe(observerOrNext?: NextObserver<T> | ErrorObserver<T> | CompletionObserver<T> | ((value: T) => void), error?: (error: any) => void, complete?: () => void): Subscription
  27. _trySubscribe(sink: Subscriber<T>): TeardownLogic
  28. forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise<void>
  29. pipe(...operations: OperatorFunction<any, any>[]): Observable<any>
  30. toPromise(promiseCtor?: PromiseConstructorLike): Promise<T>
  31. }

子類

  • BehaviorSubject
  • ReplaySubject
  • AsyncSubject

描述

每個(gè)主題都是一個(gè)可觀察者和一個(gè)觀察者。您可以訂閱主題,也可以在提要值以及錯(cuò)誤和完成旁邊調(diào)用。

靜態(tài)特性

屬性 類型 描述
創(chuàng)造 Function

建設(shè)者

constructor()參量沒有參數(shù)。

物產(chǎn)

屬性 類型 描述
觀察者 Observer<T>[]
關(guān)閉 false
isStopped false
hasError false
thrownError any

方法

電梯() lift<R>(operator: Operator<T, R>): Observable<R>

參量 類型
算子 類型:。Operator 

returnsObservable<R>

下一個(gè)()
next(value?: T)
參量 類型
值可選的 默認(rèn)值為undefined。類型:T

錯(cuò)誤()
error(err: any)參量呃類型:any。

完成()
complete()參量沒有參數(shù)。

退訂()
unsubscribe()參量沒有參數(shù)。

_trySubscribe()
_trySubscribe(subscriber: Subscriber<T>): TeardownLogic

參量 類型
訂戶 類型:。Subscriber

returnsTeardownLogic

_訂閱()
_subscribe(subscriber: Subscriber<T>): Subscription
參量 類型
subscriber 類型:Subscriber
returnsSubscription

asObservable()
使用此 Subject 作為源創(chuàng)建一個(gè)新的 Observable。您可以執(zhí)行此操作以創(chuàng)建自定義主題的 Observer 端邏輯,并從使用 Observable 的代碼中隱藏它。
asObservable(): Observable<T>參量沒有參數(shù)。退貨Observable<T>:可觀察到,主體強(qiáng)制轉(zhuǎn)換為
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)