无法在Closure

时间:2017-04-14 12:36:27

标签: ios swift generics closures

现在我正在尝试在AlamoFireAlamofireObjectMapper库上创建网络图层类。我在这里创建了一个获取请求的方法是以下代码

func getRequest<T: BaseMappable>(_ url : String,
                                 success: @escaping (DataResponse<T>) -> Void,
                                 failure: @escaping (Error) -> Void) -> Void {

    self.request(url, method: .get).responseObject{ (response : DataResponse<T>) in

        success(response as DataResponse<T>)
    }        
}

我在项目中导入了以下库

import Alamofire
import AlamofireObjectMapper
import ObjectMapper

以下是我在尝试ViewController

中的方法时遇到的错误

enter image description here

先谢谢您的支持

1 个答案:

答案 0 :(得分:2)

尝试在块参数中将其更改为(response: DataResponse <Country>)

这是因为您的泛型函数不知道用于泛型参数的类型,并且类型检查器无法推断它。您可以通过明确说明类型来帮助它。