Qoder 项目初始化模板:快速搭建 React Vue 与 Go 的标准环境
2026-06-05
2026-06-08 0
应人工梳理主流程交互链路,用动宾短语命名状态,明确标注触发条件、界面副作用及失败兜底行为,并使用真实字段名替代占位符。

用Gemini生成组件交互的状态图提示词时,常出现状态命名随意、转换条件模糊、缺少边界动作等问题,导致输出像机器穷举而非人工梳理的逻辑骨架。
打开产品原型或PRD文档,用荧光笔标出用户完成一个关键任务所必经的3~5个界面节点,例如“搜索框聚焦→输入关键词→点击搜索→展示结果列表→点击某条结果”。这一步不写代码、不画图,只圈出真实发生过的跳转路径。
丢掉所有“可能进入”“偶尔触发”的分支,【只保留主流程中每一步都必然发生的交互动作】。Gemini看到模糊路径会自动补全冗余状态,而人工整理的第一原则是克制。
方法一:把每个节点压缩成“动词+名词”结构,如“显示空提示”“加载中遮罩生效”“提交按钮禁用”。
方法二:直接截取UI上可见的、用户可感知的文案,如“请输入手机号”“验证码已发送”“注册成功弹窗”。
避免使用“初始态”“终态”“异常态”这类抽象标签——它们对开发者无意义,也掩盖了真实交互意图。
第一步:在每个状态旁手写一行小字,说明“谁在什么时机、做什么操作”才引发该状态,例如:“用户点击‘下一步’按钮后→表单校验通过→跳转至支付页”。
第二步:在箭头旁补充该转换带来的界面副作用,例如:“清空搜索框文字”“滚动到列表顶部”“隐藏键盘”。
第三步:对所有带网络请求的状态,在右侧加括号注明超时/失败兜底行为,例如:“加载中(10秒未响应→显示重试按钮)”。
这三步缺一不可。Gemini默认忽略副作用和失败路径,而人工整理的状态图里,【80%的维护成本来自没写清楚这些细节】。
把提示词里的“{userInput}”“[data]”全部替换成项目中实际使用的变量名或API返回字段,例如把“显示{resultCount}条结果”改成“显示searchResponse.total条结果”。
这能让Gemini理解上下文约束,避免生成“显示items.length条结果”这种脱离工程实际的表达。