Есть ли способ инициализировать CoreData и EnvironmentObject в SceneDelegate?

Как мне инициализировать оба объекта, managedObjectContext и.environmentObject в корневом представлении scenedelegate?

Я перепробовал все варианты этого кода - не сработало:

let contentView = ContentView().environment(\.managedObjectContext, context)

        // Use a UIHostingController as window root view controller.
        if let windowScene = scene as? UIWindowScene {
            let window = UIWindow(windowScene: windowScene)
            window.rootViewController = UIHostingController(rootView: contentView.environmentObject(UserSettings()))
            self.window = window
            window.makeKeyAndVisible()
        }

Спасибо за вашу помощь!

1 ответ

Решение

У меня это сработало.

let userSettings = UserSettings()

let contentView = ContentView()
        .environment(\.managedObjectContext, context)
        .environmentObject(userSettings)
Другие вопросы по тегам