swift - AnyView 阻止查看更新
问题描述
我有一个简单的看法:
该视图被另一个具有观察对象的视图包裹。
这样的代码不会更新视图:
struct SomeView: View {
@ObservedObject var viewModel: ViewModel
var body: some View {
let text = viewModel.text
return ForEach(0..<1) { AnyView(text) }
}
}
但它有效:
return ForEach(0..<1) { text }
是虫子吗?我可以将 AnyView 用于 ForEach 视图吗?
解决方案
哦,当我问一个问题时,我找到了解决方案:
你应该使用 ForEachForEach(0..<1, id: \.self) { AnyView(text) }
推荐阅读
- javascript - `string` 类型的无效道具`x` - 预期`object` + `string` 类型的'y' - 预期`array`
- mysql - 如果在 MySQL 中同时运行,我的 UPDATE 语句可以工作吗?
- javascript - 当 XSL 使用 xsl:include 时,如何将 XSL 与 Javascript 一起应用?
- python - tensorflow:reshape() 可以创建副本吗?
- wordpress - 我在 Facebook 期间遗漏了什么 - Auth0 设置不断给我一个列表错误
- excel - excel - VBA - 单元格刷新后我无法刷新链接到公式的形状条件格式
- bash - 提取文本文件中以 > 开头的行的方括号之间的信息
- php - 使用 Wordpress 自动完成 Jquery 时出现 JSON 错误中的意外令牌 <
- python - Pandas 按聚合函数分组 - 删除顶级标题
- javafx - 如何将线绑定到JavaFX中另一个节点内的圆圈?