У меня есть метод getProducts в моей модели представления:
struct MyViewModel {
func getProducts(categoryId: Int) -> Observable<[Product]> {
return api.products(categoryId: categoryId)
}
var isRunning: Observable <Bool> = {
...
}
}
api.products
- это частная переменная, которая использует URLSession rx
расширение: session.rx.data(...)
в фоновом режиме.
Я хотел бы иметь некоторого наблюдателя isRunning в моей модели представления, на который я мог бы подписаться, чтобы знать, выполняет ли он сетевой запрос.
Могу ли я это сделать, не внося никаких поправок в свой класс api?
Я новичок в реактивном программировании, поэтому любая помощь будет оценена по достоинству.
Спасибо.