摘要:原文什么是是一個(gè)對(duì)象,表示一種可被處置的資源,通常指代一個(gè)流的執(zhí)行過程。在之前版本中的,被稱為可被處置的。本質(zhì)是一個(gè)含有方法,用來釋放資源或者取消流執(zhí)行的對(duì)象。
原文: http://reactivex.io/rxjs/manu...
什么是Subscription? Subscription是一個(gè)對(duì)象,表示一種可被處置的資源,通常指代一個(gè)Observable流的執(zhí)行過程。
Subscription有一個(gè)重要的方法unsubscribe(),不需要參數(shù),僅僅用來釋放掉subscription實(shí)例所持有的的資源。
在之前版本中的RxJS,Subscription被稱為“可被處置的”。
var observable = Rx.Observable.interval(1000); var subscription = observable.subscribe(x => console.log(x)); // Later: // This cancels the ongoing Observable execution which // was started by calling subscribe with an Observer. subscription.unsubscribe();
Subscription本質(zhì)是一個(gè)含有unsubscribe()方法,用來釋放資源或者取消Observable流執(zhí)行的對(duì)象。
多個(gè)Subscription可以被組合在一起,從而使調(diào)用其中一個(gè)Subscription的unsubscribe()方法能夠讓所有的Subscription都取消流的執(zhí)行。要做到這一點(diǎn),可以將一個(gè)subscription實(shí)例“添加”到另一個(gè)中去:
var observable1 = Rx.Observable.interval(400); var observable2 = Rx.Observable.interval(300); var subscription = observable1.subscribe(x => console.log("first: " + x)); var childSubscription = observable2.subscribe(x => console.log("second: " + x)); subscription.add(childSubscription); setTimeout(() => { // Unsubscribes BOTH subscription and childSubscription subscription.unsubscribe(); }, 1000);
執(zhí)行一下,我們可以看到輸出是這樣的:
second: 0 first: 0 second: 1 first: 1 second: 2
Subscription也有一個(gè)名為remove(otherSubscription)的方法,用來撤銷已經(jīng)添加到其中的其他Subscription。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/83626.html
摘要:通過執(zhí)行和可以向訂閱者推送不同的通知。之后,執(zhí)行過程可能被處理掉。當(dāng)調(diào)用并得到觀察者時(shí),在中傳入的函數(shù)將會(huì)被執(zhí)行。每次執(zhí)行都會(huì)觸發(fā)一個(gè)單獨(dú)針對(duì)當(dāng)前的運(yùn)行邏輯。通知不發(fā)出任何值,表示流的結(jié)束。 原文:http://reactivex.io/rxjs/manu... Rx.Observalbe.create()或者創(chuàng)建操作符,可以 創(chuàng)建(created) Observable流。Obser...
摘要:舉例來說,每年都有生日是一道數(shù)據(jù)流,但是一個(gè)人的年齡卻是一個(gè)流。運(yùn)行結(jié)果顯示,第二個(gè)在訂閱之后,獲得了數(shù)據(jù)流中最后毫秒事件內(nèi)產(chǎn)生的和三個(gè)值。 原文:http://reactivex.io/rxjs/manu... Subject是什么? RxJS的Subject是Observable的一個(gè)特殊類型,他可以將流中的值廣播給眾多觀察者(Observer)。一般的Observalbe流是單一...
摘要:原文是一個(gè)使用可觀察量隊(duì)列解決異步編程和基于事件編程的庫。提供了幾個(gè)管理異步事件的核心概念可觀察量,代表了一個(gè)由未來獲取到的值或事件組成的集合。相當(dāng)于事件觸發(fā)器,是向多個(gè)廣播事件或推送值的唯一方法。 原文:http://reactivex.io/rxjs/manu... RxJS 是一個(gè)使用可觀察量(observable)隊(duì)列解決異步編程和基于事件編程的js庫。他提供了一個(gè)核心的類型O...
摘要:到底是什么先上代碼輸出這里可以把想象成一個(gè)函數(shù),這意味著你每次調(diào)用都會(huì)導(dǎo)致傳入里的回調(diào)函數(shù)重新執(zhí)行一次調(diào)用的方式為相當(dāng)于。接收函數(shù)返回值的方式也從改為通過傳入回調(diào)函數(shù)的方式獲取。具體看代碼運(yùn)行結(jié)果如上的第一個(gè)回調(diào)函數(shù)里的結(jié)構(gòu)是推薦的結(jié)構(gòu)。 通俗的方式理解Rx.js 序言 今早看民工叔的文章的時(shí)候, 發(fā)現(xiàn)對(duì)Rxjs所知甚少, 于是去官方看了下教程, 整理出一些東西, 寫成此文。Rxjs據(jù)...
摘要:仿宋可以把想像成一個(gè)可以發(fā)射事件的庫。在中用來處理異步事件的核心概念包括代表了未來可能會(huì)產(chǎn)生的一系列的值或事件的集合回調(diào)函數(shù)的集合,它知道如何去處理上產(chǎn)生的值或者事件,當(dāng)然也包括異常。 又一年要過去了,回顧2017,rxjs始終是我在項(xiàng)目里使用最頻繁的庫,在我看來,它是一個(gè)非常優(yōu)秀的數(shù)據(jù)處理工具。年初的時(shí)候就計(jì)劃寫點(diǎn)什么,礙于目前公司的項(xiàng)目實(shí)在抽不出時(shí)間,這一拖就到了年底。臨近新年,總...
閱讀 2014·2021-11-15 11:38
閱讀 2048·2019-08-30 15:55
閱讀 2182·2019-08-30 15:52
閱讀 3167·2019-08-30 14:01
閱讀 2684·2019-08-30 12:47
閱讀 1129·2019-08-29 13:17
閱讀 1062·2019-08-26 13:55
閱讀 2629·2019-08-26 13:46