模糊地使用'继续'螺栓-Swift快速3

时间:2016-09-27 16:15:00

标签: swift parse-platform swift3 bolts-framework

我试图在我的项目中使用螺栓。

当我尝试使用带有continue的螺栓时,我收到此错误。

Ambiguous use of 'continue'

这也是我的代码。

return PFUser._privateDigitsLoginWithConfiguration(configuration: configuration).continue{ task in
            guard let result = task.result as? [String:AnyObject] else {
                return nil
            }
            let requestURLString = result[Constants.requestURLStringKey] as! String
            let authorizationHeader = result[Constants.authorizationHeaderKey] as! String
            print(Constants)
            return PFCloud.callFunction(inBackground: "loginWithDigits", withParameters: ["requestURL": requestURLString, "authHeader": authorizationHeader])
            }.continue {
                PFUser.become(inBackground: $0.result as! String)
        }

1 个答案:

答案 0 :(得分:5)

如果你在continue块周围加上括号,会有帮助吗?也就是说,你现在使用

.continue ({ })

而不是

.continue { }

我遇到了同样的问题,谷歌搜索后发现多次提到这个问题,这对我有所帮助。这似乎成为最近Swift版本更改的要求。

这将是带括号的代码:

return PFUser._privateDigitsLoginWithConfiguration(configuration: configuration).continue ({ task in
            guard let result = task.result as? [String:AnyObject] else {
                return nil
            }
            let requestURLString = result[Constants.requestURLStringKey] as! String
            let authorizationHeader = result[Constants.authorizationHeaderKey] as! String
            print(Constants)
            return PFCloud.callFunction(inBackground: "loginWithDigits", withParameters: ["requestURL": requestURLString, "authHeader": authorizationHeader])
            }).continue ({
                PFUser.become(inBackground: $0.result as! String)
        })