首页 > 解决方案 > 无法使用类型为“([String:Any],完成:((错误?)-> Void)?)”的参数列表调用“setData”

问题描述

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

预期类型为“([String:Any],完成:((错误?)-> 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!")
            }
        }
    }
}

}

但它给了我运行时错误: 以未捕获的异常终止

有谁知道这意味着什么?

标签: iosswiftfirebasefirebase-authenticationgoogle-cloud-firestore

解决方案


这是DocssetData中的语法

// 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!")
    }
}

推荐阅读