Subscription
Direct Subclass:
Indirect Subclass:
表示可清理的资源,比如 Observable 的执行。Subscription 有一个重要的方法,unsubscribe
,
该方法不接受参数并且清理该 subscription 持有的资源。
另外,subscriptions 可以通过 add()
方法进行分组,即可以给当前 Subscription 添加子 Subscription。
当 Subscription 被取消订阅,它所有的子孙 Subscription 都会被取消订阅。
Test:
Constructor Summary
Public Constructor | ||
public |
constructor(unsubscribe: function(): void) |
Method Summary
Public Methods | ||
public |
add(teardown: TeardownLogic): Subscription 添加一个 tear down 在该 Subscription 的 unsubscribe() 期间调用。 |
|
public |
remove(subscription: Subscription): void 从 Subscription 的内部列表中删除一个 Subscription。在该 Subscription 取消订阅的过程中 取消订阅。 |
|
public |
unsubscribe(): void 清理 subscription 持有的资源。例如,可以取消正在进行的 Observable 执行或取消在创建 Subscription 时启动的任何其他类型的工作。 |
Public Constructors
Public Methods
public add(teardown: TeardownLogic): Subscription source
添加一个 tear down 在该 Subscription 的 unsubscribe() 期间调用。
如果清理是在已取消订阅的 subscription 时候添加的,那么它和 add 正在调用的引用是同一个,
或者是 Subscription.EMPTY
, 它都不会被添加。
如果该 subscription 已经在 closed
状态,传入的清理逻辑将会立即执行。
Params:
Name | Type | Attribute | Description |
teardown | TeardownLogic | 执行清理程序时的附加逻辑。 |
Return:
Subscription | 返回用于创建或添加到内部 Subscription 列表中的 Subscription。
该 Subscription 可以使用 |
public remove(subscription: Subscription): void source
从 Subscription 的内部列表中删除一个 Subscription。在该 Subscription 取消订阅的过程中 取消订阅。
Params:
Name | Type | Attribute | Description |
subscription | Subscription | 被移除的 subscription。 |
Return:
void |
public unsubscribe(): void source
清理 subscription 持有的资源。例如,可以取消正在进行的 Observable 执行或取消在创建 Subscription 时启动的任何其他类型的工作。
Return:
void |