【发布时间】:2022-01-24 12:59:03
【问题描述】:
我对 Alamofire 和一般用途有疑问:
struct Network{
static func getApiRequest<T>(model:BaseNetworkClass,type : T.Type,completionHandler:@escaping (T)->(),errorHandler:@escaping (String) ->()) where T:Decodable{
AF.request(model.request(), method: model.httpMethod as! HTTPMethod, parameters: nil, encoder:URLEncodedFormParameterEncoder.default , headers: nil, interceptor: nil, requestModifier: nil).responseDecodable { (response:AFDataResponse<T>) in
switch response.result{
case .success(let res):
completionHandler(res)
break
case .failure(let err):
errorHandler(err.localizedDescription)
}
}
}
}
`
当我尝试使用它时,我收到错误 "Generic parameter 'Parameters' could not be inferred":
我的错误是什么?
【问题讨论】:
-
向我们展示您如何尝试使用它,因为这是错误所在。
-
@workingdog 我什至不能使用它,因为它给了我我提到的错误
-
告诉我们你如何称呼这个
getApiRequest,正如你所说,这是你得到错误的地方。 -
@workingdog 我刚刚添加了可以查找的错误图像。我不要在任何地方使用这种方法,因为它给了我这个错误消息。我无法清楚地解释自己对这一点感到抱歉
-
@Sait47 不要使用两个完成处理程序。你应该使用 Swift 通用枚举
Result和.success和.failure。顺便说一句,您需要显式设置结果类型。
标签: swift xcode oop generics alamofire