Как реализовать var в struct View для класса ObservableObject в swiftui - PullRequest
0 голосов
/ 06 апреля 2020

Я не могу реализовать var в struct View для класса ObservableObject в swiftui

struct History: View {

var busId : String

@ObservedObject var historyData = getHistory()

var body: some View {
    ZStack{
        ScrollView(.vertical, showsIndicators: false){
            VStack(alignment: .leading){

                ForEach(historyDataSatu.data){i in
                      Text("Something")
                }

            }

        }
    }
}

class getHistory: ObservableObject {

    @Published var data = [history]()

    init() {

        let db = Firestore.firestore().collection("Bus").document(busId)
        // An error occurs when I implement busId into document(busId). Please help me.

    }


   }
}

struct history: Identifiable {
    var id : String
    var day : String
}

1 Ответ

0 голосов
/ 06 апреля 2020

Вы можете инициировать ObservedObject объект historyData в методе init, как. надеюсь, это поможет вам

struct History: View {

    var busId : String
    @ObservedObject var historyData = getHistory(busId: "")

    init() {
       self.historyData = getHistory(busId: busId)
    }

    var body: some View {
        ZStack{
            ScrollView(.vertical, showsIndicators: false){
                VStack(alignment: .leading){
                    ForEach(historyData.data) { i in
                       Text("Something")
                    }
                }
            }
        }
    }
}

class getHistory: ObservableObject {

    @Published var data = [history]()
    init(busId: String) {
        let db = Firestore.firestore().collection("Bus").document(busId)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...