Перейдите к тому же представлению в SwiftUI - PullRequest
1 голос
/ 12 марта 2020

Итак, я пытаюсь перейти от одного вида к другому в SwiftUI и наткнулся на проблему.

Мои представления выглядят следующим образом и пытаются перейти от одного DetailView к другому DetailView, но как только я нажимаю sh навигационную ссылку, я возвращаюсь к первому DetailView.

Любые идеи о том, как добиться перехода к тому же представлению в SwiftUI?

ListView.swift

struct ListView: View {
    var body: some View {
        NavigationView {
            VStack {
                NavigationLink(destination: DetailView(data: data)) {
                    Text("Navigate")
                }
            }
        }
    }
}

DetailView.swift

struct DetailView: View {
    var body: some View {
        VStack {
            NavigationLink(destination: DetailView(data: otherData)) {
                Text("Navigate")
            }
        }
    }
}

РЕДАКТИРОВАТЬ:

Удалите NavigationView в DetailView, как указано ниже, но все еще сталкиваются с той же проблемой.

1 Ответ

0 голосов
/ 12 марта 2020

Удалить NavigationView из DetailView, в стеке должна быть только одна, поэтому при переходе все новые ссылки открываются в оригинале NavigationView:

struct DetailView: View {
    var body: some View {
         VStack {
             NavigationLink(destination: DetailView(data: otherData)) {
                 Text("Navigate")
             }
         }
    }
}
...