类型“ KingfisherError”没有成员“ badData”

问题描述

我有一个KingfisherManager扩展名,以前是Kingfisher 4来加载图像,当我尝试将吊舱更新为Kingfisher 5时,出现了此错误

enter image description here

我尝试使用一些整数错误代码(例如1000)删除 KingfisherError.badData.rawValue ,但它似乎可以正常工作,但是我收到了不赞成使用的警告提示

'retrieveImage(with:options:progressBlock:completionHandler :)'已过时:改为使用基于Result的回调。

这是我的扩展名

import Foundation
import Kingfisher
import RxSwift

extension KingfisherManager {
    
    func loadImage(url: URL,headers: [String:String]) -> Single<UIImage> {

        return Single<UIImage>.create { single in
            
            let resource = ImageResource(downloadURL: url)
            let modifier = AnyModifier { request in
                var request = request
                for (headerField,value) in headers {
                    request.setValue(value,forHTTPHeaderField: headerField)
                }
                return request
            }
            
            let task = self.retrieveImage(with: resource,options: [.requestModifier(modifier)],progressBlock: nil,completionHandler: { (image,error,_,_) in
                single((image != nil) ? .success(image!) : .error(error ?? NSError(domain: KingfisherError.domain,code: 1000,userInfo: nil)))
            })
            
            return disposables.create { task?.cancel() }
        }
        
    }
}

在此感谢您的迁移。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...