RxSwift Observable不发出值

问题描述 投票:1回答:1

我有这个Observable:

func getCategories() -> Observable<[LKCategory]>{
    return Observable<[LKCategory]>.create { observer -> Disposable in
        self.storeHandler.fetchRegions(forStoreID: self.storeID) { (regions, error) in
            if let uwError = error {
                observer.on(.error(uwError))
            }else {
                observer.on(.next(regions?.map{ self.regionToCategory(region: $0) } ?? [LKCategory]()))
                observer.on(.completed)
            }
        }
        return Disposables.create()
    }
}

而且我这样订阅:

    self.getCategories()
        .subscribe(onNext: { (cat) in
            print("print")
        }, onError: { (error) in
            print("print")
        }, onCompleted: {
            print("print")
        }, onDisposed: {
            print("print")
        }).disposed(by: self.disposeBag)

我进入了可观察范围,尤其是在.next.completed行中

但是在我的订阅中,我没有印刷品...

ios swift observable rx-swift
1个回答
0
投票

此可观察的结果不触发订阅中传递的任何块的唯一原因是您的fetchRegions函数实际上并未调用完成块。

© www.soinside.com 2019 - 2024. All rights reserved.