Создание $(count)
count += 1
return Observable.create { observer in
print("Emitting...")
observer.onNext("🐶")
observer.onNext("🐱")
observer.onNext("🐵")
return Disposables.create()
}
}
deferredSequence .subscribe(onNext: { print($0) }) .addDisposableTo(disposeBag)
Создание очереди Observable
, которая не отправляет элементы и сразу останавливается с ошибкой.
example("error") {
let disposeBag = DisposeBag()
Observable<Int>.error(TestError.test)
.subscribe { print($0) }
.addDisposableTo(disposeBag)
}
Добавление дополнительной операции для всех отправленных и полученных событий подробнее.
example("doOn") {
let disposeBag = DisposeBag()
Observable.of("🍎", "🍐", "🍊", "🍋")
.do(onNext: { print("Intercepted:", $0) }, onError: { print("Intercepted error:", $0) }, onCompleted: { print("Completed") })
.subscribe(onNext: { print($0) })
.addDisposableTo(disposeBag)
}
> Конечно, есть методы `doOnNext(_:)`, `doOnError(_:)` и `doOnCompleted(_:)`, которые перехватывают определённые события. Метод `doOn(onNext:onError:onCompleted:)` перехватывает один или несколько сигналов событий.
[Следующая глава](/Working_with_Subjects.md) - [Вернуться к оглавлению](/README.md)
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )