core-data - 将条目添加到上下文时,自定义获取请求不更新视图
问题描述
CoreData
Ticket
我分别有一对多的关系Job
。
为了显示所有Job
的 s,Ticket
我必须避免使用正常的@FetchRequest
通过这样做,当我添加新视图时,我的视图不会更新Job
我的自定义类Ticket
有这个代码来显示所有相关Job
的
@NSManaged var jobs: NSSet?
public var jobArray: [Job] {
let set = jobs as? Set<Job> ?? []
return set.sorted {
$0.wrappedEquipmentName < $1.wrappedEquipmentName
}
}
因此,当使用票证初始化视图时,例如:
struct MyView: View {
let ticket: Ticket
var body: some View {
ForEach(ticket.jobsArray) { job in
Text(job.name)
}
}
}
我认为Combine
是答案,但我不确定如何解决。
解决方案
你必须观察票
更改let ticket: Ticket
为
@ObservedObject var ticket: Ticket
所有 CoreData 对象都是ObservableObjects
推荐阅读
- reactjs - 与 if / else 反应的问题
- webgl - 具有多个渲染目标的 WebGL readPixels
- docusignapi - 如何检索按模板 ID 过滤的已完成信封?
- c# - 带有泛型的观察者模式
- java - 在java中停止异步任务的onPostExecute
- java - Spring Security 5 - 如何从 id_token 进行 SSO(Google 一键式)
- python - 从 JSONL 文件中提取嵌套数组
- c# - 如何处理第三方 API
- python - 检查数据框列的列表成员资格并附加结果?
- xslt - 如何使用带有 Xpath 替换功能的案例替换模式