У меня есть представление SwiftUI, которое отображает результат запроса CoreData.
В родительском представлении я хочу отобразить счетчик запроса (без повторного запроса).
Я попытался передать счет к родителю в привязке, но я получаю предупреждение «Изменение состояния во время обновления представления, это приведет к неопределенному поведению». и это не работает.
import SwiftUI
struct CD_Main: View {
@State var count = 0
var body: some View {
VStack {
Text("count in main: \(count)")
CD_Query(c: $count)
}
}
}
struct CD_Query: View {
@Binding var c : Int
@Environment(\.managedObjectContext) var moc
@FetchRequest(entity: Item.entity(), sortDescriptors: [], predicate: nil) var items: FetchedResults<Item>
var body: some View {
c = items.count // Produces: Modifying state during view update, this will cause undefined behavior.
return VStack {
Text("Count Innen: \(items.count) ")
List(items, id: \.self) {
item in
Text(item.title)
}
}
}
}
Есть идеи, как правильно установить привязку или как передать счет родителю?