W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
創(chuàng)建一個(gè)使用資源的 Observable,該資源將與 Observable 同時(shí)處理。
using<T>(resourceFactory: () => void |Unsubscribable
, observableFactory: (resource: void | Unsubscribable
) => any): Observable
<T>
resourceFactory | 創(chuàng)建任何資源對(duì)象的函數(shù) 實(shí)現(xiàn) unsubscribe 方法。 |
---|---|
observableFactory | 一個(gè)功能 創(chuàng)建一個(gè) Observable,可以使用注入的資源對(duì)象。 |
Observable<T>
:行為與所返回的 Observable 相同的 Observable observableFactory
,但 當(dāng)完成,出錯(cuò)或取消訂閱時(shí),它們也會(huì)調(diào)用 unsubscribe
創(chuàng)建的資源對(duì)象。
當(dāng)您在觀察到的情況下開始清理時(shí),請(qǐng)使用它。
using
是工廠操作員,它接受兩種功能。 第一個(gè)函數(shù)返回一個(gè)一次性資源。 它可以是實(shí)現(xiàn) 的任意對(duì)象 unsubscribe
方法 。 第二個(gè)功能將被注入 該對(duì)象,并應(yīng)返回一個(gè) Observable。 該 Observable 可以在其執(zhí)行期間使用資源對(duì)象。 傳遞給這兩個(gè)函數(shù)的函數(shù) using
每當(dāng)有人訂閱時(shí), 都會(huì)被調(diào)用-既不是 Observable 也不是Observable 訂閱之間將以任何方式共享資源對(duì)象。
由返回的 using
訂閱 Observable時(shí),將從第二個(gè)函數(shù)返回的 Observable 進(jìn)行訂閱 也一樣 其所有通知(下一個(gè)值,完成和錯(cuò)誤事件)將由輸出不變地發(fā)出 可觀察的。 但是,如果有人取消訂閱 Observable 或來源 Observable 本身的完成或錯(cuò)誤, 的 unsubscribe
資源對(duì)象上 方法將被調(diào)用。 這可以用來進(jìn)行任何必要的清理, 否則必須手動(dòng)處理。 請(qǐng)注意,當(dāng)有人進(jìn)行操作時(shí),不會(huì)發(fā)出完整或錯(cuò)誤通知 通過取消對(duì) Observable 的訂閱 unsubscribe
,因此 using
可以用作掛鉤,使您能夠 確保在可觀察的執(zhí)行過程中需要存在的所有資源將在適當(dāng)?shù)臅r(shí)間被處置。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: