将基于Promise的函数转换为基于可观察的函数

时间:2017-11-17 17:02:46

标签: javascript promise async-await observable

以可观察的方式做这样的事情最简单的方法是什么?

async function promiseBased {
    await // wait for some jobs to be done
}

await promisebased();
// then do other jobs

3 个答案:

答案 0 :(得分:0)

你可以使用Observable.fromPromise来获取一个可观察的promise和observable.toPromise来获得一个可观察的承诺

答案 1 :(得分:0)

不确定它是否是您正在寻找的东西,但是有一个内置的运算符可以将承诺转换为可观察的

yield

链接到doc

答案 2 :(得分:0)

在搜索了一下后,我最终得到了这种方法,我不确定这是最简单的方法:

function observableBased() {
    return Observable.create((observable) => {
        // some async jobs
        // then
        observable.next();
    })
}


observableBased().subscriber(()=>{
    // do other jobs
})