私は以下のフィドル(私が持っているいくつかのコードの簡略版)を持っています。エラーのために1つのフラットマップの後にRxJsサブスクリプションがなくなります
https://jsfiddle.net/9uau0ya4/
const subject = new Rx.Subject();
const subscription = subject.flatMap(Rx.Observable.fromPromise).subscribe((value) => {
console.log(value);
});
const promise1 = new Promise((resolve) => {
resolve(1);
});
const promise2 = new Promise((resolve) => {
resolve(2);
});
const promise3 = new Promise((resolve) => {
resolve(3);
});
subject.onNext(promise1);
subject.onNext(promise2);
subject.onNext(promise3);
私はフィドルを実行すると、私は1、2、3は、コンソールに記録されることを期待します。何が起こるかは、1は正常に記録されますが、被験者の次の2つのonNext()呼び出しでエラーが表示されます 未知(未定)TypeError:self._s.scheduleは関数ではありません
私は上記ネイティブの約束事とq.js約束はどちらも同じように見える。私はドキュメントを見てきましたが、私はここで何が起こっているのかの答えを考え出すことはできません。
また、私はその場でブレークポイントを置く場合はどこスケジューラ(_s)(スケジューラことになっている)_sプロパティに設定されていることを表示されるプロパティ(rx.allのライン2435)ストリーム上にプルーフされた約束ごとに増分する整数値。 (約束どおりに解決する価値はありませんが、それはストリームのすべての約束と共に増えていく) – theMothaShip