codecamp

RxJS Subscriber

实现 Observer接口并扩展 Subscription类。尽管 Observer公开的 API 是用于消费 an 值的公共 API Observable,但所有观察者都会转换为订阅者,以便提供类似订阅的功能,例如 unsubscribe。订阅服务器是 RxJS 中的一种常见类型,对于实现操作符至关重要,但很少用作公共 API。

class Subscriber<T> extends Subscription implements Observer {
  static create<T>(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber<T>
  constructor(destinationOrNext?: NextObserver<any> | ErrorObserver<any> | CompletionObserver<any> | ((value: T) => void), error?: (e?: any) => void, complete?: () => void)
  protected isStopped: boolean
  protected destination: PartialObserver<any> | Subscriber<any>
  next(value?: T): void
  error(err?: any): void
  complete(): void
  unsubscribe(): void
  protected _next(value: T): void
  protected _error(err: any): void
  protected _complete(): void
  _unsubscribeAndRecycle(): Subscriber<T>

 
  // inherited from index/Subscription
  static EMPTY: Subscription
  constructor(unsubscribe?: () => void)
  closed: [object Object]
  unsubscribe(): void
  add(teardown: TeardownLogic): Subscription
  remove(subscription: Subscription): void
}

静态方法

创造()
给定订阅用户的静态工厂,给定观察者的(可能是部分)定义。
static create<T>(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber<T>

参量 类型
下一个 可选的。默认值为undefinednext观察者的回调
错误 可选的。默认值为undefinederror观察者 的回调
完成 可选的。默认值为undefinedcomplete观察者 的回调

returnsSubscriber<T>:订阅用户包装由给定参数表示的(部分定义的)观察者。

建设者

constructor(destinationOrNext?: NextObserver<any> | ErrorObserver<any> | CompletionObserver<any> | ((value: T) => void), error?: (e?: any) => void, complete?: () => void)参量 destinationOrNext 可选的。默认值为 undefined。部分定义的 Observer 或next回调函数。错误可选的。默认值为 undefinederror 观察者 的回调。完成可选的。默认值为undefinedcomplete 观察者 的回调。

物产

属性 类型 描述
isStopped boolean
目的地 PartialObserver<any> | Subscriber<any>

方法

下一个()
从Observable Observer接收next带有值的类型的通知的回调。Observable可以多次调用此方法0次。
next(value?: T): void参量值可选的。默认值为undefined。该next值。returnsvoid

错误()
从 Observable Observer接收 error 带有类型的通知的回调 Error。通知观察者可观察对象发生错误情况。
error(err?: any): void参量呃可选的。默认值为undefined。该error例外。returnsvoid

完成()
从 Observable Observer 接收类型的无价值通知的回调 complete。通知观察者 Observable 已完成基于推送的通知的发送。
complete(): void参量没有参数。returnsvoid

退订()
unsubscribe(): void参量没有参数。returnsvoid

_下一个()
protected _next(value: T): void参量值类型:T。returnsvoid

_错误() protected _error(err: any): void

参量 类型
err 类型:any

returnsvoid

_完成()
protected _complete(): void参量没有参数。returnsvoid

_unsubscribeAndRecycle()
_unsubscribeAndRecycle(): Subscriber<T>参量没有参数。returnsSubscriber<T>

  • 订阅用户
  • 静态方法
  • 创造()
  • 建设者
  • 物产
  • 方法
  • 下一个()
  • 错误()
  • 完成()
  • 退订()
  • 下一个()
  • 错误()
  • 完成()
  • unsubscribeAndRecycle
RxJS SubscribableOrPromise
RxJS Subscription
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

RxJS operators

RxJS fetch

RxJS testing

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }