[英]Cannot invoke Method with an argument list of type in swift
我有一個功能
func mapResponse<T:Mappable>(responseObject:Alamofire.Request,
forRequest requestObject:RequestObject,
responseType:T,
completion:(AnyObject?,String?) -> Void)
{
responseObject.responseObject{(response: Response<T, NSError>) in
if let error = response.result.error {
completion(nil,error.description)
return
}
else {
let value:T = response.result.value!
self.saveObject(value, forRequest: requestObject,completion: completion)
}
}
}
當我稱之為
let model:Mappable = requestObject.responseModel
ResponseMapper.sharedInstance.mapResponse(request,
forRequest:requestObject,
responseType:model,
completion:completion)
哪里
struct RequestObject {
let requestName:RequestName
let parametersStructure:Array<ParameterKey>?
let inputParameters:Dictionary<Parameter,AnyObject>?
let requestType:RequestType
let requestUrl:String
let cachLevel:CachLevel
let responseModel:Mappable
let parameterEncoding:ParameterEncoding
}
它給我錯誤:
“無法使用參數列表調用'方法'”
雖然它的工作正常如下
ResponseMapper.sharedInstance.mapResponse(request,
forRequest:requestObject,
responseType:CarModel(),
completion:completion)
哪里
Class CarModel: Mappable
第一次通話的問題在哪里
requestObject.responseModel
應符合Mappable
struct RequestObject<T where T:Mappable> {
let responseModel:T
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.