Я вычисляю количество объектов в CoreData ManagedObject Элемент в представлении CountView в приложении MacOS (без Catalyst).
Первый прямой вызов работает нормально, секунда в месте назначения NavigationLists падает.
Что я делаю не так?
struct ContentView: View {
@Environment(\.managedObjectContext) var moc
@FetchRequest(entity: Item.entity(), sortDescriptors: [], predicate: nil) var items: FetchedResults<Item>
var body: some View {
NavigationView {
VStack {
CountView() // works fine
NavigationLink("Count", destination: CountView()) //crashes
}
}
}
}
struct CountView: View {
@Environment(\.managedObjectContext) var moc
@FetchRequest(entity: Item.entity(), sortDescriptors: [], predicate: nil) var items: FetchedResults<Item>
var body: some View
{ Text("Count: \(items.count) ").frame(maxWidth: .infinity, maxHeight: .infinity)
}
}
Контекст устанавливается следующим образом в AppDelegate:
func applicationDidFinishLaunching(_ aNotification: Notification) {
let moc = persistentContainer.viewContext
let contentView = ContentView().environment(\.managedObjectContext, moc)