2017-05-29 31 views
3

我有angular2-seed-based的角度2應用程序。我有以下的角/ RX代碼:如何在rxjs/angular中導入.refCount()

this.http.get(...).map((res) => res.json()).publishReplay().refCount(); 

我用

import { Observable } from 'rxjs/Observable'; 
import 'rxjs/add/operator/map'; 
import 'rxjs/add/operator/publishreplay'; 

分別導入所有的運營商。但似乎沒有文件導入refCount運算符...或者我錯過了一些東西。我很確定應該有這樣的文件,也許它存儲在不同的位置。

的蠻力解決方案,唯一我已經成功地獲得工作,是很殘酷的:

import 'rxjs'; 

我使用rxjs V5

回答

6

refCountConnectableObservable一個method。它不是一個可以添加到任意可觀察值的運算符 - 因此沒有rxjs/add/operator/refCount文件。

refCount只能與返回ConnectableObservable的運營商一起使用。

publishReplay運營商返回ConnectableObservable,所以要使用refCountpublishReplay,不需要額外的導入。

此外,您應該知道,導入rxjs/add/operator/publishreplay不適用於區分大小寫的文件系統,因爲文件名爲publishReplay

+0

一切都很好,但你沒有寫什麼,我應該導入! :) – ducin

+1

你不需要導入任何東西。我已經更新了答案。如果它不起作用,則應該包含任何有效的錯誤。 – cartant

+0

你是對的。順便說一句,感謝與文件案例的提示,你說得對,使用Windows。 – ducin