[请先阅读代码以更好地理解。
func getType<T: Decodable>(urlString: String, header: HTTPHeaders, completion: @escaping (T?) -> Void){
}
let networkManager = DataManager()
networkManager.getType(urlString: kGetMyDayTaskDetails + strId, header: header) { (MyDayAndTaskDetails) in
}
错误:
Generic parameter 'T' could not be inferred
我正在尝试使用泛型将struct作为参数传递,以使用用于api调用的通用方法。但是无法正确拨打电话。请指导。
请考虑闭包中的参数是instance,而不是类型。例如喜欢
networkManager.getType(urlString: kGetMyDayTaskDetails + strId,
header: header) { details in
}
要指定泛型类型对其进行注释,并且根据签名,它必须是可选的
networkManager.getType(urlString: kGetMyDayTaskDetails + strId,
header: header) { (details : MyDayAndTaskDetails?) in
}