Ответ на этот вопрос здесь неоднократно получен, но я просто хотел также продемонстрировать интересные аспекты SwiftUI, показывая, что если у вас есть представление A с данными, которые также будет использовать представление B, вы можете передать данные, создав @State в представление A и объявление той же переменной с объявлением @Binding в представлении B
struct ViewA : View {
@State var myItems: [Items]
var body: some View {
NavigationView {
VStack {
NavigationButton(destination: ViewB(items: $myItems)) {
Text("Go To ViewB")
}
}
}
}
}
struct ViewB : View {
@Binding var myItems: [Items]
var body: some View {
NavigationView {
List{
ForEach(myItems.identified(by: \.self)) {
Text($0.itemName)
}
}.navigationBarTitle(Text("My Items"))
}
}
}