首先,我看到了答案: here 但是对于我来自android和angular只是让人头脑发热,必须编写这么多代码(在android和angular它需要一行的地方)加上答案不是最新的,所以想知道现在有没有更好的方法
澄清这里是我的例子:
struct User{
let fistName:String
let lastName:String
}
我用以下方法检索数据:
Firestoer.firestore().collection("users").document('someId').getDocument{
(snapshot,error) in
}
问题是如何使用一行代码将快照值分配给用户对象值 - 如同user = snapshot -ish一样。
答案 0 :(得分:0)
通过阅读您的评论,很难理解您在哪里遇到问题。我将假设这是因为你不知道如何编写其他初始化程序,因为你的第一个评论:
`my object is simple "stuct" and I could not make "(dictionary: data)" -call.`
以下是您可以使用的初始化程序:
extension User {
init?(dictionary: [String: Any]){
guard let firstName = dictionary["firstName"] as? String else { return nil }
guard let lastName = dictionary["lastName"] as? String else { return nil }
}
self.init(firstName: firstName, lastName: lastName)
}
答案 1 :(得分:-1)
我终于发现,简单的swift firestore sdk仍然缺少这个功能,但是接口就像是在工作中你可以在here
找到关于它的讨论......我们的雷达上有一些这样的东西。基本上我们想要提供Android DocumentSnapshot.toObject的等价物。
,希望很快就能完成......