Неоднозначное использование "continue" Bolts-Swift в swift 3
Я пытаюсь использовать болты в моем проекте.
Я получаю эту ошибку, когда пытаюсь использовать болты с продолжением.
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 ответ
Поможет ли вам поставить круглые скобки вокруг блоков продолжения? То есть вы сейчас используете
.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)
})