
Я пытаюсь заставить свое приложение SwiftUI загружать и отображать эту информацию, но ничего из того, что я пробовал, пока не помогло. В частности, данные, которые я пытаюсь получить, — это все, что находится в Разделе2, Разделе2Copy и любом другом объекте, являющемся дочерним элементом Раздела1.
Я пытался создать ObservableObject и класс для обработки эти данные, но учебники, которые я нашел, до сих пор не принесли никакой пользы. Кто-нибудь знает, как это сделать? Буду очень признателен за любую помощь.
Это то, что я сделал до сих пор.
class FirebaseData: Encodable, Decodable {
let id: String = ""
let info: String = ""
}
extension Encodable{
var toDict: [String: Any]? {
guard let data = try? JSONEncoder().encode(self) else {return nil}
return try? JSONSerialization.jsonObject(with: data, options: .allowFragments) as? [String: Any]
}}
class ViewModel: ObservableObject{
@Published var data = [FirebaseData]()
var ref = Database.database().reference().child("ATop/Section1/Section2")
func observelist(){
ref.observe(.value) { parent in
guard let children = parent.children.allObjects as? [DataSnapshot] else {return}
self.data = children.compactMap({snapshot in
return try? snapshot.data(as: FirebaseData.self)
})
}
}}
Подробнее здесь: https://stackoverflow.com/questions/784 ... base-swift