swiftui - SwiftUI 视图中的数据数组在从 UIViewController 返回时不会刷新
问题描述
我有一个项目列表,每个项目都有一个导航链接。触发时,它会从 SwiftUI 调用 UIViewController,对一些数据进行操作,然后返回。当pdfsList
我从视图控制器返回时,需要重新获取数组。我该如何做到这一点?
struct ContentView : View {
@State var pdfsList: [PDFSummary] = Realm.studyHallRealm.objects(PDFSummary.self).sorted(by: { $0.name < $1.name })
var body: some View {
NavigationView {
List(pdfsList) { pdfSummary in
NavigationLink(destination: InterfaceController(url: pdfSummary.dynamicURL(), summary: pdfSummary)) {
Text(pdfSummary.name)
.foregroundColor(self.itemColor(pdfSummary: pdfSummary))
}
}.navigationBarTitle(Text("PDF Library (SwiftUI)"))
}
}
解决方案
我认为您可以在列表中的 .onAppear 操作中获取数据
NavigationView {
List(pdfsList) { pdfSummary in
NavigationLink(destination: InterfaceController(url: pdfSummary.dynamicURL(), summary: pdfSummary)) {
Text(pdfSummary.name)
.foregroundColor(self.itemColor(pdfSummary: pdfSummary))
}
}.navigationBarTitle(Text("PDF Library (SwiftUI)"))
.onAppear {
self.pdfsList = Realm.studyHallRealm.objects(PDFSummary.self).sorted(by: { $0.name < $1.name })
}
}
推荐阅读
- python - 如何使用 django formset_factories?
- apache-spark - 无法从 PySpark 访问 Hive 表面临错误
- powershell - vagrant up 失败:尝试运行宅基地时无法翻译名称@rb_sysopen
- java - 'org.springframework.cloud.netflix.zuul.ZuulProxyAutoConfiguration':通过字段'configurers'表达的不满足的依赖关系
- api - 需要为 OroCommerce 创建类别 API
- javascript - 为什么 onPress 不能在世博客户端上工作
- linux - 使用 bash 将从文本文件中删除的行复制回其原始文件
- mongodb - 404 未授权:使用 Realm CLI 进行身份验证:
- java - Junit 模拟泛型类作为方法参数
- r - R Shiny:为不同的数据集创建唯一的数据表