呼叫函式時出錯。
func hitService<T : Codable>(urlS: String , completion : @escaping (T) -> Void) {
guard let url = URL(string: urlS) else {return}
let session = URLSession.shared
let _ = session.dataTask(with: url) { dt, resp, err in
let decoder = JSONDecoder()
if let d = dt {
do {
let obj = try decoder.decode(T.self, from: d)
completion(obj)
} catch {print(error.localizedDescription)}
}
}.resume()
}
像這樣呼叫函式并在上面出錯。我也嘗試在 <> 中傳遞資料型別。
hitService(urlS: urlStr) { b in
}
uj5u.com熱心網友回復:
泛型函式依賴于您在呼叫時指定型別,以便它可以推斷出它使用的型別。
在這種情況下,您需要提供閉包引數的型別,b即
hitService(urlS: urlStr) { (b: MyType) in
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/363405.html
