Не сохраняются данные в массив
Я совсем недавно начал изучать SwiftUI и не могу разобраться. У меня есть экран с поездками, они находятся в массиве в отдельном файле. Так же есть экран добавление поездки, там есть кнопка add, после нажатия данные не сохраняются в массив, но .dissmis отрабатывает и закрывает окно.
Массив поездок:
class TripsArray : ObservableObject{
@Published var trip = [
Trip(country: "South Korea", city: "Seoul", flight: [ Flight(flight_number: "SU123")]),
Trip(country: "Russia", city: "Moscow", flight: [Flight(flight_number: "SU456")] )
]
}
struct Trip: Identifiable{
var country : String
var city : String
var flight : Array<Flight>
var id = UUID()
var date = Date()
}
struct Flight: Identifiable{
var flight_number : String
var id = UUID()
Экран добавления поездки:
struct NewTrip: View {
@Environment(\.dismiss) var dismiss
@EnvironmentObject var data : TripsArray
@State var newTrip : Trip = Trip(country: "", city: "", flight: [Flight(flight_number: "")])
var body: some View {
VStack{
Form {
Section("Country") {
TextField("Country", text: $newTrip.country)
}
Section("City") {
TextField("City", text: $newTrip.city)
}
}
.toolbar{
Button("Add"){
data.trip.append(newTrip)
dismiss()
}
}
}.navigationTitle("New trip")
}
}
не могу понять почему не отрабатывает data.trip.append(newTrip)
При этом ошибок в Xcode у меня нет
Ответы (1 шт):
Автор решения: OVERMIND
→ Ссылка
Наверняка, вы, уже нашли решение за это время.
@ObservedObject var data = TripsArray()