谓词是这样定义的:
public static func currentCyclePredicate() -> Predicate<Cycle> {
let currentDate = Date.now
return #Predicate<Cycle> {
$0.startDate <= currentDate && currentDate <= $0.endDate
}
}
但是,一旦我点击按钮,使用
currentCycle
型号导航到视图,CPU使用率为200%,内存使用率上升。当时该应用程序无反应,我只能重新运行。
这在我的应用程序的另一部分之前就发生在我身上,我通过将.modelContainer
修饰符从WindowGroup
移到根视图本身来解决了它。添加信息:该应用程序是基于选项卡的。我将容器添加到每个选项卡的视图而不是窗口组的视图中。我看到了一些报告说这可能是一个框架错误,但这似乎是一种基本用例,我觉得我一定缺少一些基本的东西。 中学问题;该模型也具有主/细节的模式,即有一个带有各种细节模型的主要模型。主视图显示主模型,细节视图显示详细模型。我倾向于在细节视图中注入细节模型,而不会重新播出。这种方法在SwiftData中是否正确?还是我应该注入标识符并为其进行查询?
可能的错误是这一行:
let currentDate = Date.now
代码正在更改每个视图上的刷新...引起另一个视图刷新。