
Код: Выделить всё
struct ReminderListView: View {
// ...
@Query private var reminderList: [Reminder]
init(filter: ReminderPredicate) {
let sortDescriptors: [SortDescriptor]
let filterPredicate: Predicate
switch filter {
case .filterAllReminder:
filterPredicate = #Predicate { $0.createDate != nil }
sortDescriptors = [SortDescriptor(\Reminder.completeDate, order: .forward)]
case .filterFinishedReminder:
filterPredicate = #Predicate { $0.completeDate != nil}
sortDescriptors = [SortDescriptor(\Reminder.completeDate, order: .forward)]
}
_reminderList = Query(filter: filterPredicate, sort: sortDescriptors)
}
// ...
}
Если я изменю фильтр на nil Query(), тогда это работает: _reminderList = Query(filter: nil, sort: sortDescriptors)
Я также пробовал передать предикат напрямую, но это не работает: _reminderList = Query(filter: # Predicate { $0.createDate != nil }, sort: sortDescriptors)
Подробнее здесь: https://stackoverflow.com/questions/786 ... is-not-nil
Мобильная версия