我正在使用 Firebase 和 SwiftUI 以用户身份登录。我一切正常,但无法弄清楚用户成功登录后如何导航到下一页。导航链接对我来说似乎很奇怪,所以我想知道是否有其他方法可以导航到下一个视图。其中LoginView包含登录屏幕并LoginViewModel使用 Firebase 执行登录过程。问题是,如果我基于根视图中的变量返回视图,那么一旦打开根视图以外的任何视图,它就不会更改视图(即,如果我导航到登录视图,它不会转到按下登录按钮后的主视图)。
ContentView(显示所有其他视图的根视图):
import SwiftUI
struct ContentView: View {
@StateObject var userLoggedIn = LoginViewModel()
var body: some View {
if !userLoggedIn.isLoggedIn {
LoginView()
}
else {
MainView()
}
}
}
Run Code Online (Sandbox Code Playgroud)
登录查看:
import SwiftUI
import FirebaseAuth
struct LoginView: View {
@State private var email: String = ""
@State private var password: String = ""
@State private var isEditing = false
@State private var showPassword = false
@State private var radius = 300 …Run Code Online (Sandbox Code Playgroud)