Ios 调用中的额外参数“数据”

Ios 调用中的额外参数“数据”,ios,swift,firebase,google-cloud-firestore,Ios,Swift,Firebase,Google Cloud Firestore,我在addDocumentdata:[]的调用中得到了一个额外的参数“data”。它一直运行良好,昨天也很好。我今天醒来运行它,发现了这个错误。我完全困惑了 var db = Firestore.firestore() func sendDataToDatabase(message: String){ let senderIDNumber = Auth.auth().currentUser?.uid let timeStampString = String(Int(Date().

我在addDocumentdata:[]的调用中得到了一个额外的参数“data”。它一直运行良好,昨天也很好。我今天醒来运行它,发现了这个错误。我完全困惑了

var db = Firestore.firestore()
func sendDataToDatabase(message: String){
    let senderIDNumber = Auth.auth().currentUser?.uid
    let timeStampString = String(Int(Date().timeIntervalSince1970))
      db.collection("chats").addDocument(data: [
        "message" : messageText.text!, "senderID" : senderIDNumber!, "receiverID" : receiverIDNumber!, "timestamp" : timeStampString!, "conversationsCounter" : conversationsCounterInt!
   ]) { err in
        if let err = err {
            print("Error writing document: \(err)")
        } else {
            print("Document successfully written!")
        }
    }
}

答案是我的代码没有问题!是firebase/firestore造成了问题。 我一直在谈论,等待他们清理数据库已经好几天了,但是没有人解决这个问题


一次简单的调试发现,firebase系统中仍然保留着已删除的旧数据。我通过电子邮件发送了这些数据,但没有人解决我的问题。

什么是db..?注释掉整个方法,重新键入第一个字符并使用代码完成。顺便说一句,粗体标记在代码部分中不起作用。@I表示我已经编辑过,thks很多。W额外参数是什么意思?您能否更新并澄清指示错误所在代码行和实际错误的问题?db.collectionchats.addDocumentdata:[是有效的,并且数据是函数调用的一部分,因此这个问题没有太多意义。您是说您现有的chats集合没有时间戳子对象,所以它抛出了一个错误吗?是firebase/firestore导致了问题-我想知道这会如何导致错误“调用编译器错误中的额外参数‘data’。因为firestore存储的旧文档具有不同的参数。即使我删除了通过控制台删除的旧文档,它仍会在服务器中保留。我现在正尝试使用命令行工具删除文档,但无法执行此操作。firebaser此处似乎不太可能有人n Firebase团队将为您删除数据库中的数据。是什么原因导致旧数据出错?@FrankvanPuffelen在我的旧文档中,我没有存储接收器配置文件图片url。但是,在新文档中,我添加了接收器配置文件图片url。当我的代码运行时,它将为我的旧文档返回nil。我有del从firestore控制台删除旧文档,但它仍保留在服务器上。我还尝试使用cli删除了整个集合,但旧文档仍保留在服务器上。如果控制台不显示数据,则数据不再位于服务器端数据库中。但是,数据可能仍位于设备上的本地ache中。如果在处理双文档结构时,您的代码很难保持弹性,最简单的方法是通过卸载/重新安装应用程序来清除缓存。