使用SwiftData的@Query使该应用程序无响应 我应用程序的部分是使用SwiftData进行持久性。 UI完全用Swiftui写。从主屏幕上,我想导航到其他屏幕并将其传递模型实例。 例如,...

问题描述 投票:0回答:0

谓词是这样定义的:

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

代码正在更改每个视图上的刷新...引起另一个视图刷新。

swiftui swiftdata
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.