<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## Do 注冊一個動作作為原始Observable生命周期事件的一種占位符 ![do](https://box.kancloud.cn/302ed263477755cc7d182b4b27356964_1280x620.png) 你可以注冊回調,當Observable的某個事件發生時,Rx會在與Observable鏈關聯的正常通知集合中調用它。Rx實現了多種操作符用于達到這個目的。 RxJava實現了很多`Do`操作符的變體。 ### doOnEach ![doOnEach](https://box.kancloud.cn/33c66c4903489ccf5a1ea8108f8de892_1280x620.png) `doOnEach`操作符讓你可以注冊一個回調,它產生的Observable每發射一項數據就會調用它一次。你可以以`Action`的形式傳遞參數給它,這個Action接受一個`onNext`的變體`Notification`作為它的唯一參數,你也可以傳遞一個Observable給`doOnEach`,這個Observable的`onNext`會被調用,就好像它訂閱了原始的Observable一樣。 * Javadoc: [doOnEach(Action1)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnEach(rx.functions.Action1)) * Javadoc: [doOnEach(Observer)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnEach(rx.Observer)) ### doOnNext ![doOnNext](https://box.kancloud.cn/349e88a7c96033d61b1e3814d51709cd_1280x620.png) `doOnNext`操作符類似于`doOnEach(Action1)`,但是它的Action不是接受一個`Notification`參數,而是接受發射的數據項。 示例代碼 ```java Observable.just(1, 2, 3) .doOnNext(new Action1<Integer>() { @Override public void call(Integer item) { if( item > 1 ) { throw new RuntimeException( "Item exceeds maximum value" ); } } }).subscribe(new Subscriber<Integer>() { @Override public void onNext(Integer item) { System.out.println("Next: " + item); } @Override public void onError(Throwable error) { System.err.println("Error: " + error.getMessage()); } @Override public void onCompleted() { System.out.println("Sequence complete."); } }); ``` 輸出 ``` Next: 1 Error: Item exceeds maximum value ``` ### doOnSubscribe ![doOnSubscribe](https://box.kancloud.cn/27e0afb36686545c09d1990bda198fa0_1280x780.png) `doOnSubscribe`操作符注冊一個動作,當觀察者訂閱它生成的Observable它就會被調用。 * Javadoc: [doOnSubscribe(Action0)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnSubscribe(rx.functions.Action0)) ### doOnUnsubscribe ![doOnUnsubscribe](https://box.kancloud.cn/3f7ed5b3955f4a7f0b0a476e9624fae5_1280x620.png) `doOnUnsubscribe`操作符注冊一個動作,當觀察者取消訂閱它生成的Observable它就會被調用。 * Javadoc: [doOnUnsubscribe(Action0)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnUnsubscribe(rx.functions.Action0)) ### doOnCompleted ![doOnCompleted](https://box.kancloud.cn/4eb82c46a7c1d8ce02bf553b2e752356_1280x610.png) `doOnCompleted` 操作符注冊一個動作,當它產生的Observable正常終止調用`onCompleted`時會被調用。 * Javadoc: [doOnCompleted(Action0)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnCompleted(rx.functions.Action0)) ### doOnError ![doOnError](https://box.kancloud.cn/bddbf3c74906952a171adb73b67c769f_1280x610.png) `doOnError` 操作符注冊一個動作,當它產生的Observable異常終止調用`onError`時會被調用。 * Javadoc: [doOnError(Action0)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnError(rx.functions.Action1)) ### doOnTerminate ![doOnTerminate](https://box.kancloud.cn/eba4554cd0e336ac01d459453784ed37_1280x610.png) `doOnTerminate` 操作符注冊一個動作,當它產生的Observable終止之前會被調用,無論是正常還是異常終止。 * Javadoc: [doOnTerminate(Action0)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#doOnTerminate(rx.functions.Action0)) ### finallyDo ![finallyDo](https://box.kancloud.cn/c3743dfb5763ac62c496e2cbd87acf04_1280x620.png) `finallyDo` 操作符注冊一個動作,當它產生的Observable終止之后會被調用,無論是正常還是異常終止。 * Javadoc: [finallyDo(Action0)](http://reactivex.io/RxJava/javadoc/rx/Observable.html#finallyDo(rx.functions.Action0))
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看