2017-04-18 8 views
0

私はストリームdaysFromApi$にAPIからのデータ(日数)を持っています。 'delete'ボタンをクリックすると、mealIdがthis.deleteBus $にプッシュされます。ストリームに新しい値を設定したい:daysAfterDelete$。私の問題は、 '最初の'イベントは常にトリガされますが、 '完了'はトリガされないということです。flatMapLatestは動作しません。mapもありません。bacon.js最初に基づいて別のストリームと結合する方法は?

const daysAfterDelete$ = this.deleteBus$ 
     .log('first') // triggers when new mealId is pushed to deleteBus(a button is clicked) 
     .flatMapLatest(mealId => Bacon.combineAsArray(daysFromApi$, mealId)) 
     .log('done'); // never triggers 

私が流れ、次の取得したい:あなたは、あなたが達成したいものを

daysFromApi$ :  A   B        C 
deleteBus$  :   1    2    3 
daysAfterDelete$:   (1,A)  (2,B)   (3,B) 

答えて

1

かなりわからない、しかし、あなたは、削除をクリックしたときに、「日」の最新の値を取得したい場合sampledByを使用できます。 https://www.webpackbin.com/bins/-Ki3lTzM8PM4zeJKK9C0

+0

ありがとうございました!出来た!これは私が探していたものです。私は反応型プログラミングには新しく、適切な語彙が足りないため、私の質問はとても混乱しているように思えるかもしれません。 –

関連する問題