codecamp

RxJS Subscription

表示一次性资源,例如 Observable 的执行。订阅具有一种重要的方法,unsubscribe它不带任何参数,而只是处置该订阅所拥有的资源。

class Subscription implements SubscriptionLike {
  static EMPTY: Subscription
  constructor(unsubscribe?: () => void)
  closed: [object Object]
  unsubscribe(): void
  add(teardown: TeardownLogic): Subscription
  remove(subscription: Subscription): void
}

子类

  • Subscriber

描述

此外,可以通过 add() 方法将订阅分组在一起,该方法会将子订阅附加到当前订阅。取消订阅后,其所有子项(及其子孙)也将被取消订阅。

静态特性

属性 类型 描述
Subscription

建设者

constructor(unsubscribe?: () => void)参量退订可选的。默认值为undefined。描述unsubscribe调用该方法时如何执行资源处置的函数。

物产

属性 类型 描述
关闭 [object Object] 指示此订阅是否已经取消订阅的标志。

方法

unsubscribe()
处置预订所拥有的资源。例如,可以取消正在进行的 Observable 执行或取消在创建订阅时开始的任何其他类型的工作。
unsubscribe(): void参量没有参数。returns void

add()
添加在此 Subscription 的 unsubscribe()期间要调用的拆解。也可以用于添加子订阅。
add(teardown: TeardownLogic): Subscription参量拆除在拆卸时执行的附加逻辑。returnsSubscription:返回用于或添加到内部订阅列表的订阅。此订阅可用于 remove()从内部订阅列表中删除传递的拆解逻辑。
如果要添加的拆解是已经取消订阅的预订,add是正在调用相同的引用,还是 is Subscription.EMPTY,则不会添加。如果此订阅已处于closed状态,则传递的拆卸逻辑将立即执行。当父订阅取消订阅时,添加到该订阅的所有子订阅也将取消订阅。

remove() 从内部订阅列表中删除将在此订阅的取消订阅过程中取消订阅的订阅。 remove(subscription: Subscription): void

参量 类型
subscription The subscription to remove.

returnsvoid

RxJS Subscriber
RxJS SchedulerLike
温馨提示
下载编程狮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; }