我想要查找在任何給定時間只支持一個訂閱的可觀察的主題或事件發射器替換。即第一個獲得訂閱的人將有權執行其訂閱的機構,並且當它退訂時,任何下一個訂閱者都將被允許繼續。rxjs observable的訂閱數量限制
目前是否有任何支持此功能的可觀察,主體或事件發射器內的方法或可用於此行爲的替換方法。
或者,如果有與當過有人贊同我可以執行一些功能,一些技術/我們的目標發射退訂然後我就可以使用訪問修飾符和一個布爾值執行此功能。
目前,我想是這樣的:
private OpenDialogEmitter = new EventEmitter();
private isFirstFetch: boolean = true;
getDialogEmitter(): EventEmitter<{}> {
if (this.isFirstFetch) {
this.isFirstFetch = false;
return this.OpenDialogEmitter;
}
return null;
}
setFirstFetch(){
this.isFirstFetch = true;
}
當曾經有人退訂它必須通過調用setFirstFetch()內的服務方法再次標記觀察到的可用。
有沒有更好的和內置的方法?
我想rxjs是發生反應,沒有棱角? – rrd
rxjs:庫在Angular中可用,不確定它是否可用於React。 –
RxJS是一個獨立的圖書館。事實上,[它唯一的依賴](https://github.com/ReactiveX/rxjs/blob/5.4.2/package.json#L208-L210)是一個可觀察符號的小型填充。 – cartant