В чем разница между do (onNext :) и подпиской (onNext :)? - PullRequest
0 голосов
/ 31 декабря 2018

Я новичок в RxSwift, я не понимаю, в чем разница между do(onNext:) и subscribe(onNext:).

Я гуглял, но не нашел хороших ресурсов, чтобы объяснить разницу.

1 Ответ

0 голосов
/ 31 декабря 2018

В начале холодной наблюдаемой цепочки есть функция, которая генерирует события, например, функция, которая инициирует сетевой запрос.

Эта функция генератора будет не вызываться, если толькоНа Observable подписана (и по умолчанию она будет вызываться каждый раз, когда на подписку подписывается.) Поэтому, если вы добавите do(onNext:) в цепочку наблюдаемых, функция не будет вызвана, и действие, генерирующее события, не будетинициатор.Вы должны добавить subscribe(onNext:), чтобы это произошло.

(Фактические внутренние компоненты немного сложнее, чем приведенное выше описание, но достаточно близки для этого объяснения.)

...