第二章·Axure动态面板核心概念:面板状态、状态切换、交互触发条件、用例场景

用户场景:审批流原型中的“状态焦虑”

产品经理在评审会上演示请假审批原型时,经常遇到以下场景:

  • 点击“提交”按钮后,页面直接跳到“审批中”,缺乏中间加载反馈。
  • 驳回后想展示“重新编辑”状态,但原型只能切页或弹窗,无法在同一区域保持上下文。
  • 开发追问“不同状态下哪些按钮可用?”原型无法直观表达。

这些问题本质上是面板状态管理缺失导致的。

业务问题:静态页面无法承载动态审批流程

传统Axure原型使用独立页面表达不同审批阶段,但存在三大硬伤:

  1. 切换成本高:每个状态维护一个页面,结构冗余,修改需要同步多个页面。
  2. 状态流转不直观:交互逻辑分散在全局交互中,开发难以提取业务规则。
  3. 交付物可读性差:UED评审时需频繁跳转页面,注意力被频繁打断。

用户访谈:来自一线PM的真实反馈

访谈对象:P公司电商组产品经理 Lisa

原话摘录:“每次改审批流原型,我都要同时改5个页面。最怕老板说‘这里加个待办状态’,因为要重新画一遍。如果能像APP的卡片一样在同一位置切换内容,就轻松多了。”

痛点提炼:①状态新增成本高;②状态间跳转关系不清晰;③原型无法表达“什么条件下进入什么状态”的业务规则。

需求拆解:四个核心概念的关联矩阵

核心概念 定义 审批流典型表现 用户痛点映射
面板状态 动态面板内[[Item.Status]]对应的视觉布局 待提交、审批中、已通过、已驳回 维护多个独立页面,内容重复
状态切换 从当前状态显示切换到另一状态的过程 点击“提交”后从“待提交”→“审批中” 无法演示过渡动画与中间态
交互触发条件 导致切换发生的用户操作或变量变更 点击按钮、表单验证通过、回传状态码 开发追问“什么条件下触发?”PM无法给出精确矩阵
用例场景 特定状态下允许用户执行的操作集合 已通过状态下“撤回”按钮不可用 原型中所有按钮永远可点,误导评审判断

💡 经验公式:
审批流原型的业务完整度 ≈ 面板状态数 × 状态切换路径数 × 触发条件准确率 / 用例场景遗漏数

动态面板核心概念关系图 动态面板 面板状态 状态切换 交互触发条件 用例场景 ① 面板状态:同一组件区域在不同业务阶段的表现形式 ② 状态切换:通过Axure交互控制面板显示的名称/索引 ③ 触发条件:按钮点击、变量赋值、true条件等驱动切换的事件 ④ 用例场景:指定状态下可用的操作按钮、输入框、提示文案

方案表达:用动态面板封装“审批状态容器”

将整个审批卡片区域设计为一个动态面板,内部放置若干面板状态。每个状态对应一个审批阶段(如“待提交”)。通过交互触发条件(按钮点击、变量匹配)驱动状态切换,并在切换的同时定义当前状态的用例场景(隐藏/禁用无关控件)。

⚠️ 常见坑位:

  • 面板状态命名使用数字索引而非语义名称,后期维护时不知道“1”对应什么状态。
  • 一个动态面板内放置超过15个状态,导致加载卡顿且交互列表冗长。
  • 忘记为每个状态设置初始用例场景(如“待提交”状态下提交按钮可用,但变量尚未初始化)。

指标验证:如何衡量概念应用效果

验证指标 计算方法 目标值
原型状态切换正确率 用例走查中,预期状态与实际显示状态一致次数 / 总测试次数 ≥95%
触发条件覆盖度 已实现触发条件数 / 业务需求中列举的所有触发条件数 100%
用例场景遗漏率 UED评审中发现遗漏的禁用/隐藏控件数 / 总控件数 ≤5%

验收标准:交付物检查清单

  1. 动态面板内至少包含3个语义命名状态(如 [[Status_Ready]] 而非 [[1]])。
  2. 每个状态切换交互均附带明确的触发条件描述(写在该交互的备注栏中)。
  3. 每个状态内所有控件均已设置用例场景(禁用/隐藏条件),且与需求文档一致。
  4. 提供状态切换矩阵表格(源状态→触发条件→目标状态),作为交互说明附件。

交付物模板(原型文件结构)

文件命名规则:
项目名_审批流_动态面板_v1.0.rp

内部页面组织:

  • 审批卡片(动态面板) —— 包含7个面板状态,每个状态以涂色矩形示意视觉框架。
  • 全局变量说明 —— 定义 [[ApproveStatus]] 的枚举值及对应面板状态索引。
  • 交互触发条件总表 —— 用Axure的“用例”功能列出所有触发路径。
  • 用例场景说明书 —— 为每个状态输出按钮/输入框可用性矩阵。