SwiftUI IOS 14带有.environmentObject的新AppDeligate

时间:2020-08-20 07:44:01

标签: swiftui

对于iOS 14中的新委托文件,我需要同时包含.environmentObject设置和UserSettings:ObservableObject(这是一个领域类)。

但是如果没有(我是第一次用户),我首先需要创建User数据,否则会给我一个空错误并崩溃。

在人体负载中调用代码之前,我将代码放在哪里以启动用户?

@main
struct myapp_App: App {

   let userSettings = UserSettings()  // calling the data which will not exist if initial user

    var body: some Scene {
        WindowGroup {
            ContentView().environmentObject(userSettings)
        }
    }
}

谢谢。

1 个答案:

答案 0 :(得分:0)

如果是第一次在ObservableObject的int()中创建代码,我会放置代码。

我希望只能希望这段代码正确吗?但这有效。

祝你好运。

class UserSettings: ObservableObject {
 
    @Published var name: String? = nil
    @Published var email: String? = nil

    init(){
      
        if User.userExist() == false {
            User.initiateUser()
        }
    
        let u = User.getUser()
    
        name = u!.name
        email = u!.email

    }
 
}