1

我最近加入了一个新项目并开始研究 iOS 应用程序代码库。但是,使用最新的 Xcode 10,代码不再编译。

protocol NetworkClientType {
  associatedtype CompletionHandler
  static func intoRequest(_ url: URL?) -> URLRequest?
}

extension NetworkClientType {

  typealias CompletionHandler = (Data?, URLResponse?, Error?) -> Void

  static func intoIncompleteURLSessionDataTask(_ request: URLRequest) -> (CompletionHandler) -> URLSessionDataTask {
    return { completion in URLSession(configuration: .default).dataTask(with: request, completionHandler: completion) }
  }
}

然后在第 10 行 ( static func intoIncompleteURLSessionDataTask...),编译器错误说“CompletionHandler”在这种情况下对于类型查找来说是不明确的

有谁知道如何解决这个问题?我用谷歌搜索并找不到有效的解决方案。

4

1 回答 1

2

改变

extension NetworkClientType {
  typealias CompletionHandler = (Data?, URLResponse?, Error?) -> Void

extension NetworkClientType 
    where CompletionHandler == (Data?, URLResponse?, Error?) -> Void {
于 2018-09-18T03:57:13.673 回答