Rx JS запускает с () оператор разрешает результат Promise? - PullRequest
0 голосов
/ 24 июня 2019

Рассмотрим проблему оператора RxJs как

//emit (1,2,3)
const source = Rx.Observable.of(1,2,3);
//start with 0
const example =  source.startWith(0);
//output: 0,1,2,3
const subscribe = example.subscribe(val => console.log(val));

Теперь я хочу, чтобы startWith () был результатом Обещания.

// - 1
var pr = new Promise((res, rej) => {
  setTimeout(() => res(-1), 1000);
});

Ошибки обещания, которые должны быть обнаружены в блоке ошибок Подписки.

Окончательный результат должен выглядеть следующим образом:

-1, 1, 2, 3

------------------------------------------------

Попытка 1: Я пытался вставить обещание, но оно не было решено.

const example =  source.startWith(pr);

Попытка 2: : я пытался использовать async await, но застрял в блоке try catch.

1 Ответ

0 голосов
/ 24 июня 2019

У вас есть два Observables, source и sourceAdd

const source = Rx.Observable.of(1,2,3);
const sourceAdd;
yourPromise.then(res=>{
   sourceAdd=source.pipe(startWith(res));
   sourceAdd.subscribe(res=>{
   })
}
...