3
複数のオブザーバを連結することは可能ですか?例えばrxjs Observablesを連結する
: 私は3機能があります。
ようObservable.combine (ensureUserLogged(), createEntity(), checkEntity()).subscribe (
checkEntityResult => console.log (checkEntityResult),
error => console.log (error)
);
か何か:私はのような何かやりたい
ensureUserLogged():Observable<boolean>
createEntity():Observable<Entity>
checkEntity():Observable<boolean>
を
ensureUserLogged().then (logged => createEntity()).then (newEntity => checkEntity())...
をそうでなければ、私がする必要があります醜いピラミッドを書く:
ensureUserLogged().subscribe (
res => {
createEntity().subscribe (
res => {
checkEntity().subscribe (
res => { console.log ("I'm finally here") },
error {}
)
},
err => {
}
);
},
err => {
}
)
私の意志を達成するために何かありますか?あなたが並列実行ためObservable.forkJoin
を使用する必要が
おかげ
createEntity(2番目のObservable)に以前のObservableの結果が必要な場合はどうなりますか? – user3471528
編集:Thierryさん、ありがとうございます。したがって、flatMapを使用して、前回のサブスクリプションにも以前のメソッドによってスローされた例外が含まれていますか? – user3471528
実際、以前の観測結果は、flatMapコールバックのパラメータとして受け取ったものです。 –