如何退出循环并进入ContentView swiftUI

如何退出循环并进入ContentView swiftUI,swiftui,swiftui-navigationlink,swiftui-environment,Swiftui,Swiftui Navigationlink,Swiftui Environment,我正在做这个链接项目。 登录后如何进入ContentView?如何退出循环并进入ContentView? 如果您能提供帮助,我将非常高兴。您可以使用ZStack覆盖不同的内容,并有条件地选择可见的内容 struct ContentView: View { @State var isLoggedIn = false var body: some View { ZStack { if self.isLoggedIn {

我正在做这个链接项目。 登录后如何进入ContentView?如何退出循环并进入ContentView?
如果您能提供帮助,我将非常高兴。

您可以使用ZStack覆盖不同的内容,并有条件地选择可见的内容

struct ContentView: View {
    @State var isLoggedIn = false

    var body: some View {
        ZStack {
            if self.isLoggedIn {
                Text("You're In!")
            } else {
                LoginView(isLoggedIn: self.$isLoggedIn)
            }
        }
    }
}
其中LoginView更新状态以指示有效登录

struct LoginView: View {
    @Binding var isLoggedIn: Bool

    var body: some View {
        Button("Log in") {
            self.isLoggedIn = true
        }
    }
}
由于SwiftUI将视图显示为状态的函数,因此不会运行循环来显示登录视图,然后传递给其他内容。相反,所有可能的内容都会被描述,只要@State发生更改,视图就会被重新创建以匹配当前值