我正在使用 CloudKit 并且有一个Model
类,该类具有将用户首选项保存到云数据库的方法。我已经成功地更新了我的 Swift 3 语法,以说明随 Xcode 8 beta 6 发布的最新提案。但是,我还有最后一个错误,我似乎无法解决。我的函数的代码是:
func savePreferences(preferences: UserPreferences, completion:
@escaping (CKRecord?, NSError?) -> Void) {
privateDatabase.save(preferences.record) {
record, error in
completion(record, error)
}
}
此处使用的实例record
属性的签名是:UserPreferences
var record : CKRecord
privateDatabase
是一个CKDatabase
。
我收到的错误是:
Cannot invoke 'save' with an argument list of type (CKRecord, (CKRecord?, Error?) -> Void)
我发现删除调用会completion
导致错误消失并允许成功构建。
我希望有人能告诉我哪里出错了,或者这是否是 Xcode 8 beta 6 的错误。