该资料是面向 SwiftUI 视图与组件开发的实践指导,强调示例驱动,适合在创建或重构 SwiftUI UI、设计标签页架构时参考。
用途与用法:可按目标选择路径。已有项目先定位功能或屏幕及其主要交互模型(列表、详情、编辑器、设置、标签页),用 rg 搜索类似示例(如 rg "TabView\("),阅读最近的 SwiftUI 视图,沿用本地约定:优先 SwiftUI 原生状态、状态尽量局部化、共享依赖用环境注入。随后从 references/components-index.md 选择相关组件参考并遵循其指引,用小型专注的子视图和 SwiftUI 原生数据流构建视图。新项目脚手架从 references/app-scaffolding-wiring.md 开始,连接 TabView + NavigationStack + sheets,基于提供的骨架添加最小 AppTab 与 RouterPath,再按首个所需 UI 选择组件参考,并随新屏幕扩展路由与 sheet 枚举。
通用规则:使用现代 SwiftUI 状态(@State、@Binding、@Observable、@Environment),避免不必要的 view model;偏好组合,视图小而专注;配合 .task 使用 async/await 并显式处理加载与错误状态;仅在编辑遗留文件时保留旧模式;遵循项目格式化与风格指南。Sheet 方面,当状态代表选中模型时优先 .sheet(item:) 而非 .sheet(isPresented:),避免在 sheet body 内使用 if let,sheet 应自持动作并在内部调用 dismiss(),而非转发 onCancel/onConfirm 闭包。
新建视图流程:定义视图状态及其归属位置;确定通过 @Environment 注入的依赖;勾勒视图层级并把重复部分拆成子视图;如需则用 .task 和显式状态枚举实现异步加载;交互 UI 添加无障碍标签或标识;构建验证并按需更新调用点。
组件参考以 references/components-index.md 为入口,应包含意图与最佳适用场景、符合本地约定的最小用法、陷阱与性能说明、当前仓库中现有示例路径。新增组件参考时创建 references/<component>.md,保持简短可操作,链接到仓库具体文件,并更新索引。
资料还列出可查阅的 Apple 官方文档:references/SwiftUI-WebKit-Integration.md、references/SwiftUI-Styled-Text-Editing.md、references/SwiftUI-New-Toolbar-Features.md、references/SwiftUI-AlarmKit-Integration.md,涉及 iOS 26+ 特性。关于平台版本、收费或价格、具体效果等,资料暂未提供。