【问题标题】:Invalid conversion from throwing function of type Swift 2Swift 2 类型的抛出函数的无效转换
【发布时间】:2015-09-18 14:31:44
【问题描述】:

我将我的应用程序迁移到 Swift 2 并收到错误消息

类型的抛出函数的无效转换

在下面一行:

NSURLConnection.sendAsynchronousRequest(urlRequest, queue: NSOperationQueue.mainQueue(), completionHandler: {

这是完整的代码块:

 NSURLConnection.sendAsynchronousRequest(urlRequest, queue: NSOperationQueue.mainQueue(), completionHandler: {
    response, data, error in

    let image = UIImage(data: data!)

    self.profilePic.image = image

    if var realUser = user {

        realUser["image"] = data as! AnyObject

        try realUser.save()

        FBRequestConnection.startForMeWithCompletionHandler({
            connection, result, error in

            realUser["first_name"] = result["first_name"]
            realUser["last_name"] = result["last_name"]

            try realUser.save()  
        })
    }
})

如何使用 Swift 2 中实现的新 catch 修复此代码?

谢谢!

【问题讨论】:

    标签: swift


    【解决方案1】:

    传递给sendAsynchronousRequest的块不允许抛出错误。所以你必须抓住错误:

    do {
        try realUser.save()
    }
    catch {
        // handle the error
    }
    

    【讨论】:

      【解决方案2】:

      试试这个代码:

      NSURLConnection.sendAsynchronousRequest(urlRequest, queue: NSOperationQueue.mainQueue(), completionHandler: {
      response, data in
      
      let image = UIImage(data: data!)
      
      self.profilePic.image = image
      
      if var realUser = user {
      
          realUser["image"] = data as! AnyObject
      
          do {
              try realUser.save()
          }
          catch {
              print(error)
          }
          FBRequestConnection.startForMeWithCompletionHandler({
              connection, result, error in
      
              realUser["first_name"] = result["first_name"]
              realUser["last_name"] = result["last_name"]
      
          do {
              try realUser.save()
          }
          catch {
              print(error)
          }
          })
      }
      })
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多