2016-09-25 67 views
2

如何取消訂閱可觀察項,如果它轉換爲承諾? 我使用RxJS在角2取消訂閱observable的承諾

import 'rxjs/add/operator/toPromise'; 

return this.http.get(this.heroesUrl) 
        .toPromise() 
        .then(this.extractData) 

回答

6

如果訂閱可觀察則有可能取消它。

當您返回承諾(這裏好像返回承諾 - 觀察到),你平時不訂閱它。對??
所以你不能取消訂閱(承諾)。

+1

如何取消訂閱'Observable.fromPromise()'? – Abdel

+2

@Abdel:取消訂閱是自動的。如果您檢查Observable.fromPromise()的源代碼,則會在observer.https://github.com/Reactive-Extensions/RxJS/blob/master/src/core/perf/operators/中調用onCompleted()函數frompromise.js –

+0

@MaximeLeprince這是否意味着承諾在技術上可以被取消? – Abdel