Connect

指示一个可连接的 Observable 开始向它的订阅者发出项目

Connect

一个可连接的 Observable类似于一个普通的 Observable,区别在于它在被订阅时不会开始发出项目,而是在应用 Connect 操作符时才会开始。这样,你就可以在 Observable 开始发出项目之前,等待所有预期的观察者订阅 Observable。

另请参见

特定语言信息

待定

connect

在 RxGroovy 中,connect 操作符是 ConnectableObservable 接口的一个方法。你可以使用 publish 操作符将一个普通的 Observable 转换为 ConnectableObservable

调用 ConnectableObservableconnect 方法,指示它开始向它的订阅者发出来自其底层 Observable 的项目。

connect 方法返回一个 Subscription。你可以调用该 Subscription 对象的 unsubscribe 方法,指示 Observable 停止向它的订阅者发出项目。

你也可以使用 connect 方法,指示 Observable 开始发出项目(或者开始生成将要发出的项目),即使没有任何订阅者订阅它。这样,你就可以将一个冷 Observable 转换为一个热 Observable。

connect

在 RxJava 中,connect 操作符是 ConnectableObservable 接口的一个方法。你可以使用 publish 操作符将一个普通的 Observable 转换为 ConnectableObservable

调用 ConnectableObservableconnect 方法,指示它开始向它的订阅者发出来自其底层 Observable 的项目。

connect 方法返回一个 Subscription。你可以调用该 Subscription 对象的 unsubscribe 方法,指示 Observable 停止向它的订阅者发出项目。

你也可以使用 connect 方法,指示 Observable 开始发出项目(或者开始生成将要发出的项目),即使没有任何订阅者订阅它。这样,你就可以将一个冷 Observable 转换为一个热 Observable。

connect

在 RxJS 中,connect 操作符是 ConnectableObservable 原型的 一个方法。你可以使用 publish 操作符将一个普通的 Observable 转换为 ConnectableObservable

调用 ConnectableObservableconnect 方法,指示它开始向它的订阅者发出来自其底层 Observable 的项目。

connect 方法返回一个 Disposable。你可以调用该 Disposable 对象的 dispose 方法,指示 Observable 停止向它的订阅者发出项目。

你也可以使用 connect 方法,指示 Observable 开始发出项目(或者开始生成将要发出的项目),即使没有任何订阅者订阅它。这样,你就可以将一个冷 Observable 转换为一个热 Observable。

示例代码

var interval = Rx.Observable.interval(1000);

var source = interval
    .take(2)
    .do(function (x) { console.log('Side effect'); });

var published = source.publish();

published.subscribe(createObserver('SourceA'));
published.subscribe(createObserver('SourceB'));

// Connect the source
var connection = published.connect();

function createObserver(tag) {
    return Rx.Observer.create(
        function (x) { console.log('Next: ' + tag + x); },
        function (err) { console.log('Error: ' + err); },
        function () { console.log('Completed'); });
}
Side effect
Next: SourceA0
Next: SourceB0
Side effect
Next: SourceA1
Next: SourceB1
Completed
Completed

connect 位于以下包中

  • rx.all.js
  • rx.all.compat.js
  • rx.all.binding.js

connect 需要以下包之一

  • rx.js
  • rx.compat.js
  • rx.lite.js
  • rx.lite.compat.js

待定

待定

待定