I got a ObservableObject-Class which has a optional published var and I am giving this to ForEach, because I did not initialized my published, even after lunch of my app ForEach should not work. and that is okay, how I can correctly type it in my code?
struct PersonData: Identifiable
{
let id = UUID()
var name: String
}
class PersonDataModel: ObservableObject
{
@Published var persones: [PersonData]?
}
struct ContentView: View {
@StateObject var personDataModel = PersonDataModel()
var body: some View {
HStack
{
ForEach( personDataModel.persones != nil ? personDataModel.persones! : [] ) { person in
Text(person.name) // ← : Here
}
}
}
}
Probably you wanted this
HStack
{
ForEach(personDataModel.persones ?? [] ) { person in Text(person.name) }
}