困っていること
エラーが来た時に自分の作ったエラー型に変換をして、次の処理に回したいと考えています。
コード
以下が自作のエラー型です。
swift
1struct NetworkError: Error { 2 let type: NetworkErrorType 3} 4 5enum NetworkErrorType: Int { 6 case timeout 7 case badrequest 8 case unknown 9}
以下が実際に処理を行っている場所です
Swift
1...省略 2.subscribe( 3 onNext: { [weak self] _ in 4 //成功した時の処理 5 }, 6 onError: { [weak self] error in 7 //ここで独自のエラー以外が流れてきた時に丸めたいと考えています。 8 self?.targetSubject.onNext(Result.error(error as! NetworkError)) 9 } 10 ).disposed(by: disposeBag)
現状このようなコードになっているのですが、as!としてしまっているのでライブラリからのエラーなどがきた時にクラッシュしてしまいます。
もしエラーの型がNetworkErrorではなかったらunknownにして処理を進めたいと考えているのですがどうしたら良いのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。