Firebase Firestore-我做错了什么?

Firebase Firestore-我做错了什么?,firebase,google-cloud-firestore,swiftui,Firebase,Google Cloud Firestore,Swiftui,我正在尝试将FirebaseFirestore与我的应用程序同步。但是,我收到一个文本错误(self.data.data.speciality)->应用程序崩溃。在cloudStore中,我有:收集“SpecialtiesData”、文档“Specialties”和内部文档“test” 可能是什么错误 struct Search: View{ @ObservedObject var data = getData() var body: some View{ VStack {

我正在尝试将FirebaseFirestore与我的应用程序同步。但是,我收到一个文本错误(self.data.data.speciality)->应用程序崩溃。在cloudStore中,我有:收集“SpecialtiesData”、文档“Specialties”和内部文档“test” 可能是什么错误

 struct Search: View{
@ObservedObject var data = getData()
var body: some View{
    
    VStack {
        Text(self.data.data.specialty)
    }}}
    
struct Data {
   var specialty: String }
class getData: ObservableObject {
@Published var data : Datas!
init(){
updateData()


}
func updateData(){
    let db = Firestore.firestore()
    db.collection("SpecialtiesData").document("Specialties").getDocument { (snap, err) in
        if err != nil{
            print((err?.localizedDescription)!)
        }
        let specialty = snap?.get("speciaty") as! String
        
        DispatchQueue.main.async {
            self.data = Datas(specialty: specialty)
        }}}}

代码很好,问题出在Firebase目录规则中

Hi Mateus,我建议格式化代码,使其更易于理解。我还觉得你把“speciality”拼错了,应该是“speciality”。最后,我可以推荐您查看关于如何在SwiftUI应用程序中从Firestore获取数据的深入解释吗?@PeterFriese感谢您的回复。但我还是有问题。这里的Specialty拼错了,代码里没问题。在做了一些尝试之后,我认为问题出在“@”ObservedObject var data=getData()中。你现在知道问题出在哪里了吗?你能分享你收到的任何错误消息吗?你好@mgoya。我没有得到任何错误。但是,我已经修好了。问题出在Firebase目录规则中。如果您能更新您的答案,添加更多关于您如何解决此问题的详细信息,这将有助于其他面临相同问题的人