什么是RxJS相当于Bacon.js总线?

时间:2014-12-14 23:47:08

标签: javascript reactive-programming rxjs bacon.js

如何创建一个Observable,我可以直接将事件推送到,例如Bacon.js的总线?

1 个答案:

答案 0 :(得分:11)

RxJS中的等价物称为主题。它既是观察者又是观察者。因此,要将事件推送到它,您可以使用它的Observer接口:onNext,onError和onCompleted方法。然后你可以订阅它,映射,压缩,过滤它像任何Observable。以下是官方文档中的一个示例:

var subject = new Rx.Subject();

var subscription = subject.subscribe(
    function (x) { console.log('onNext: ' + x); },
    function (e) { console.log('onError: ' + e.message); },
    function () { console.log('onCompleted'); });

subject.onNext(1);
// => onNext: 1

subject.onNext(2);
// => onNext: 2

subject.onCompleted();
// => onCompleted

subscription.dispose();

您可以查看主题入门指南here和主题API文档here