我知道Promise只能使用一次,而Rxjs Subject可以传递多个事件。
如果您在应用程序中使用rxjs,是否将Promise可以使用的主题用作主题?
为我服务:
const addedItem: Subject = new Subject();
addedItem.next(res);
addedItem.complete();
我的消费者只是订阅并在收到消息时导航。这是好习惯吗?
答案 0 :(得分:3)
这取决于情况,但在90%的情况下-不,您不应该将Subject
用作“那个”。
它们的主要用例是进行多播(将相同的通知转发给多个订户)。但是通常,当人们开始使用ReactiveX时,他们倾向于使用它们来强制性地推销价值(而不是仅仅订阅它们)
在您的示例中,您可以:
of(res)
-这将创建只有1个值的Observable 有关更多详细信息,请阅读RxJS核心团队成员的博客文章: