Есть ли способ инициализировать 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)