SuperAPI AI 工具集

swiftui-view-refactor

编程与开发

查看项目

更新于 10-15 23:41

技能介绍

用途:为 SwiftUI 视图提供一致的结构与依赖模式,聚焦代码排序、Model-View(MV)模式、视图模型处理与 Observation 正确用法。

主要能力:

  1. 视图排序:按 Environment、private/public let、@State 等存储属性、非视图 computed var、init、body、视图构建器、辅助/异步函数的顺序自上而下排列。
  2. 优先 MV 模式:视图作为轻量状态表达,业务逻辑归模型/服务;用 @State、@Environment、@Query、task/onChange 做编排;通过 @Environment 注入服务与共享模型;大视图拆成子视图而非引入视图模型。
  3. 拆分大型 body 与视图属性:body 超过一屏或含多个逻辑区块时拆成子视图;带状态或复杂分支的大型 computed view 属性可提取为独立 View 类型;相关子视图可保留为同文件 computed 属性,仅在结构合理或需复用时提取为独立 struct;优先传小输入(数据、binding、回调)。
  4. 视图模型处理(仅当已存在时):不主动引入视图模型;已有则尽量非可选;依赖经 init 传入视图,再在视图 init 中传给视图模型;避免 bootstrapIfNeeded 模式。
  5. Observation:@Observable 引用类型在根视图用 @State 存储,按需显式向下传递,避免不必要的可选状态。

工作流:重排视图以符合排序规则;优先 MV,把轻量编排移入视图;若已有视图模型,将可选视图模型替换为在 init 中注入依赖的非可选 @State 视图模型;确认 Observation 用法无冗余包装;除非被要求,否则不改布局与业务逻辑。

适用场景:SwiftUI 代码审查、重构与结构规范化。限制:不改变布局或业务逻辑;不主动引入视图模型;资料未提供安装命令、平台与收费信息。