无法使用类型为'([[String:Any],completion:((Error?)-> Void)?)的参数列表调用'setData'

时间:2018-11-24 20:51:21

标签: ios swift firebase firebase-authentication google-cloud-firestore

我正在尝试通过Google Cloud Firestore为我的应用创建注册方法,并且在以下链接中收到以下错误:

Expected an argument list of type '([String : Any], completion: ((Error?) -> Void)?)'

我是Swift和iOS开发的新手。有人可以帮忙在这里解释问题吗?

我现在编辑成功,即可构建成功

 guard let userId = authResult?.user else { return }
        let userData: [String: Any] = [
            "firstName" : "",
            "User ID" : userId,
            "dateCreated" : FieldValue.serverTimestamp(),
            ]
        let db = Firestore.firestore()
        db.collection("users").document("one").setData(userData) { err in
            if let err = err {
                print("Error writing document: \(err)")
            } else {
                print("Document successfully written!")
            }
        }
    }
}

}

但是它给了我运行时错误: terminating with uncaught exception

有人知道这意味着什么吗?

1 个答案:

答案 0 :(得分:1)

这是Docs中的setData语法

// Add a new document in collection "cities"
db.collection("cities").document("LA").setData([
    "name": "Los Angeles",
    "state": "CA",
    "country": "USA"
]) { err in
    if let err = err {
        print("Error writing document: \(err)")
    } else {
        print("Document successfully written!")
    }
}