SwiftUI 模式 适用于 Apple 平台的现代 SwiftUI 模式,用于构建声明式、高性能的用户界面。涵盖 Observation 框架、视图组合、类型安全导航和性能优化。 何时激活 构建 SwiftUI 视图和管理状态时( 、 、 ) 使用 设计导航流程时 构建视图模型和数据流时 优化列表和复杂布局的渲染性能时 在 SwiftUI 中使用环境值和依赖注入时 状态管理 属性包装器选择 选择最适合的最简单包装器: | 包装器 | 使用场景 | |---------|----------| | | 视图本地的值类型(开关、表单字段、Sheet 展示) | | | 指向父视图 的双向引用 | | 类 + | 拥有多个属性的自有模型 | | 类(无包装器) | 从父视图传递的只读引用 | | | 指向 属性的双向绑定 | | | 通过 注入的共享依赖项 | @Observable ViewModel 使用 (而非 )—— 它跟踪属性级别的变更,因此 SwiftUI 只会重新渲染读取了已变更属性的视图: 消费 ViewModel 的视图 环境注入 用 替换 : 视图组合 提取子视图以限制失效 将视图拆分为小型、专注的结构体。当状态变更时,只有读取该状态的子视图会重新渲染: 用于可复用样式的 ViewModifier 导航 类型安全的 NavigationStack 使用 与 来实现…