1
我知道我需要使用startWith
,但仍試圖弄清楚如何使用它。如果我只是做Subject.create().startWith("Some Value)
,它會將Subject
變成Observable
,並且我不能使用next
發出。RXJS主題,每次首次訂閱時返回相同的值
因此,多個訂戶應該能夠subscribe
它。應該可以撥打next
Subject
。閱讀Subject.create()
的文檔,但速度很慢。
編輯: 我在使用公認的解決方案後纔開始工作。之所以不工作的原因是因爲我把.next
調用放入訂閱中。
如:
observable.subscribe((res) => {
// do something
s.next('another res');
}
這將創建一個無限循環,我認爲RXJS預防呢?無論如何,我把next
放在那裏用於調試目的。我把它移到了subscribe
塊之外,現在和初始結果發出,然後當next
被調用時,subscribe
裏面的東西再次發出。
我試着這樣做,但是當我打電話'next'上可觀察到的不發射's' –
感謝martin,我認爲RXJS在我爲了調試目的而在訂閱中加入'next'時阻止了我愚蠢的無限循環。將它移出邊,現在最初和下一次都會完成。 –