需求
UI 架构
默认选项
SwiftUI 采用跨 @State, @Environment,以及小型的专用功能 View 类型的 MV 优先拆分
为何需要它
大型页面通常在引入另一个视图模型层之前,通过 Codex 简化视图树和状态流会变得更易于维护。
Codex 用例
使用 Codex 将过大的 SwiftUI 页面拆分为小型子视图,且不改变其行为或布局。
使用 Codex 和 Build iOS Apps 插件将冗长的 SwiftUI 视图拆分为专门的局部视图,将副作用移出 body, 稳定 state 和 Observation 的使用,并保持重构以 MV 为优先,而不是引入不必要的视图模型。
使用 Codex 将过大的 SwiftUI 页面拆分为小型子视图,且不改变其行为或布局。
使用 Codex 和 Build iOS Apps 插件将冗长的 SwiftUI 视图拆分为专门的局部视图,将副作用移出 body, 稳定 state 和 Observation 的使用,并保持重构以 MV 为优先,而不是引入不必要的视图模型。
使用 Codex 和 Build iOS Apps 插件将冗长的 SwiftUI 视图拆分为专门的局部视图,将副作用移出 body, 稳定 state 和 Observation 的使用,并保持重构以 MV 为优先,而不是引入不必要的视图模型。
| 技能 | 为什么使用它 |
|---|---|
| 构建 iOS 应用 | 使用 SwiftUI 视图重构技能来提取专门的子视图,保持稳定的数据流,简化 Observation 的使用,并在 Codex 编辑大型 SwiftUI 页面时保持行为完整无损。 |
此用例适用于 SwiftUI 文件已膨胀为巨型页面,且每次微小的编辑都让人感到风险的时候。目标不是重新设计功能或发明新架构。要求 Codex 保留行为和布局,然后将页面拆分为具有显式数据流的小型子视图,从而使后续修改变得更容易审查。
使用 Build iOS Apps 插件 这类清理工作。它的 SwiftUI 视图重构技能在实用性上具有鲜明的观点:默认采用 MV 而非 MVVM,将业务逻辑保留在服务或模型中,优先使用局部视图状态和环境依赖,并且仅在该功能明确需要时才保留视图模型。
首先指定一个具体的页面文件,并要求 Codex 在改进结构的同时保留原有行为。以下是值得直接放入提示词中的重构规则:
init, body, 视图辅助函数和辅助方法很容易从上到下进行扫描。View 类型,并带有小型显式输入、 @Bindings 和回调。some View 辅助方法少而精。不要将一个巨型页面重构成一长串私有的计算型视图片段。body, 并将真正的业务逻辑移入服务或模型中。if/else 分支来整体替换页面。@Observable 模型,拥有它们的视图应将其存储在 @State;仅当你的部署目标要求时才使用旧版可观察包装器。保持行为的重构应附带证明。要求 Codex 在每次有意义的提取之后,运行能够覆盖该页面的最小构建、预览、测试或模拟器检查,然后总结结构上发生了哪些变化,以及哪些是有意保持不变的。
如果页面过大,请要求 Codex 在引入新的抽象层之前先提取局部视图。更短、更明确的视图树通常能完全消除添加视图模型的压力。
在适合工作流的地方,优先选择 let 值、 @Bindings 以及单一用途的回调,而不是将整个父模型交给每个子视图。这使得提取出的每个部分更易于预览,并且更难意外地与整个页面重新耦合。
对于安全的重构,当 Codex 明确列出其未更改的内容时会有很大帮助:业务规则、导航行为、持久化、分析语义以及用户可见的布局。这能让审查变得快得多。
需求
默认选项
为何需要它
需求
UI 架构
默认选项
SwiftUI 采用跨 @State, @Environment,以及小型的专用功能 View 类型的 MV 优先拆分
为何需要它
大型页面通常在引入另一个视图模型层之前,通过 Codex 简化视图树和状态流会变得更易于维护。
需求
重构工作流
默认选项
为何需要它
该插件的 SwiftUI 视图重构技能为 Codex 提供了关于提取、Observation 和副作用清理的明确规则,同时保留了原有行为。
需求
验证
默认选项
xcodebuild、预览和专门的 UI 检查
为何需要它
每次提取后进行小型构建或模拟器检查,使人们更容易信任这种保持行为的重构,而不是一次性重写。
| 需求 | 默认选项 | 为何需要它 |
|---|---|---|
| UI 架构 | SwiftUI 采用跨 @State , @Environment ,以及小型的专用功能 View 类型的 MV 优先拆分 | 大型页面通常在引入另一个视图模型层之前,通过 Codex 简化视图树和状态流会变得更易于维护。 |
| 重构工作流 | Build iOS Apps 插件 | 该插件的 SwiftUI 视图重构技能为 Codex 提供了关于提取、Observation 和副作用清理的明确规则,同时保留了原有行为。 |
| 验证 | xcodebuild 、预览和专门的 UI 检查 | 每次提取后进行小型构建或模拟器检查,使人们更容易信任这种保持行为的重构,而不是一次性重写。 |