gpt4 book ai didi

node.js - RxJS - 从 EventEmitter 的多个事件创建 Observable

转载 作者:太空宇宙 更新时间:2023-11-03 23:21:53 25 4
gpt4 key购买 nike

我有一个 node.js EventEmitter,它会引发以下事件:错误消息

有没有一种直接的方法可以从中创建 RxJS Observable?

next()message 调用,error()error 调用。

最佳答案

您可以像这样创建它:

const obs$ = Observable.create(observer => {
emitter.on('message', val => observer.next(val));
emitter.on('error', err => observer.error(err));
});
<小时/>

作为替代方案,您可以通过像这样构造和链接可观察量来做到这一点,但它的可读性显然较差:

const message$ = Observable.fromEvent(emitter, 'message');
const error$ = Observable.fromEvent(emitter, 'error');

const obs$ = Observable.merge(
message$.catch(err => Observable.of(err)),
error$.mergeMap(val => Observable.throw(val)),
);

关于node.js - RxJS - 从 EventEmitter 的多个事件创建 Observable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48621655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com