gpt4 book ai didi

rxjs - 如何将Observable转换为ReplaySubject?

转载 作者:行者123 更新时间:2023-12-03 23:35:08 27 4
gpt4 key购买 nike

这是我现在要做的将Observable转换为ReplaySubject的操作:

const subject = new Rx.ReplaySubject(1);

observable.subscribe(e => subject.next(e));


这是进行转换的最佳方法,还是还有一种惯用的方法?

最佳答案

如果要传递所有3种类型的通知,则只能使用observable.subscribe(subject),因为主题已经表现得像观察者。例如:

let subject = new ReplaySubject();
subject.subscribe(
val => console.log(val),
undefined,
() => console.log('completed')
);

Observable
.interval(500)
.take(5)
.subscribe(subject);

setTimeout(() => {
subject.next('Hello');
}, 1000)


观看现场演示: https://jsbin.com/bayewo/2/edit?js,console

但是,这有一个重要的后果。由于您已经订阅了源Observable,因此将其从“冷”更改为“热”(在您的用例中可能无关紧要)。

关于rxjs - 如何将Observable转换为ReplaySubject?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41730542/

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