от
Поэтому я пытаюсь настроить CoreData с помощью SwiftUI, и работают как модель CoreData, так и представления SwiftUI. Все, что мне нужно сделать, это подключить их. Я могу передать дискретное количество объектов BindableObject, но мне нужно передать массив. Вот настройки:
let peristence = PersistenceManager()
var model = [Entry]() // Entry Conforms to NSManagedObject and BindableObject
let request = Entry.createFetchRequest()
let sort = NSSortDescriptor(key: "callsign", ascending: true)
request.sortDescriptors = [sort]
do {
    model = try peristence.persistenceContainer.viewContext.fetch(request)
} catch {
    fatalError(error.localizedDescription)
}

if let windowScene = scene as? UIWindowScene {
    let window = UIWindow(windowScene: windowScene)
    window.rootViewController = UIHostingController(rootView: ContentView().environmentObject(model))
Который выдает следующую ошибку:   Метод экземпляра «environmentObject» требует, чтобы «[Entry]» соответствовал «BindableObject» Как бы я сделал
[Entry]
совместимым?              

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

1 Ответ

0 голосов
от
Вы можете использовать NSFetchedResultsControllerDelegate, который реализует протокол BindableObject и передает изменения в NSFetchedResultsController
class BindableFetchedResults
...