Firebase-无法将呼叫结果类型“ [_]”转换为预期类型“ _?”

时间:2018-10-06 10:36:02

标签: ios swift firebase google-cloud-firestore

我一直在关注Firebase文档,但是遇到了这个错误,我不确定该如何解决。

这是我的代码和在“ let dataDescription = ...”行上遇到的错误

无法将通话结果类型'[]'转换为预期类型'?'

let key = UserDefaults.standard.value(forKey: "uid") as! String
        let docRef = firebaseDB.collection("user").document(key)

        docRef.getDocument { (document, error) in
            if let document = document, document.exists {
                let dataDescription = document.data().map(String.init(describing:)) ?? "nil"
                print("Document data: \(dataDescription)")
            } else {
                print("Document does not exist")
            }
        }

1 个答案:

答案 0 :(得分:0)

document.data().map(String.init(describing:))的结果是一个非可选的数组。运营商 '??'需要一个可选值。只需删除?? "nil",它就会起作用