使用RXSwift时出现一个非常奇怪的错误。我正在调用的服务是Single trait,当我只打印错误时,我的代码可以毫无问题地编译,但是如果我尝试在“ onError”中执行其他操作,则代码不会编译。有人有同样的问题吗?
这段不编译的代码:
NetworkManager.shared.authorizeService(with: parameters)
.subscribe(onSuccess: { [weak self] status in
}, onError: { [weak self] error in
paymentAuthorizationFinishedWithError.onNext(APIResponseError.paymentAlreadyInProgress)
}).disposed(by: bag)
编译的代码:
NetworkManager.shared.authorizeService(with: parameters)
.subscribe(onSuccess: { [weak self] status in
}, onError: { [weak self] error in
print(error)
}).disposed(by: bag)
迅速的编译器有时会很慢。特别是在接收方面。问题是这条线
self.paymentAuthorizationFinishedWithError.onNext(APIResponseError.paymentAlreadyInProgress)
您忘记了添加,?
因为您正在使用weak
参考:self?.paymentAuthorizationFinishedWithError.onNext(APIResponseError.paymentAlreadyInProgress)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句