E6.13.2result-object coupling设计

内联呈现避免了全局提示与操作对象的脱节

别名: 结果脱节 · global vs object · 回执对不上

概念解释

全局槽里的「已删除」不说删的是哪一行;对象还在列表里或已经没了,和那条消息之间要靠用户自己补主语。脱节就是这层补主语失败:消息和对象不再被当成同一件事。内联呈现把主语钉在对象身上,省掉这次补全。这一条的对手是全局回执,不是「结果要不要靠近触发点」本身——靠近是位置,脱节是身份对不上。

机制

全局回执的主语默认是「整个这里」。人正在看的却是表格里的某一行。两套主语竞争时,用户会拿全局那句去概括整张表:一条失败变成「保存坏了」,一条成功变成「都可以走了」。列表还可能在回执出现的同时重排、过滤,被操作的那一行已经不在原先坐标,全局消息更找不到挂钩。内联不靠用户做挂钩,对象自己带着结局移动——行被过滤走,失败标记跟行走;行还在,成功态就还在那一行上。脱节的代价不是少看一句表扬,而是错误地扩大或缩小了结果的范围。

边界

对象在结果到达前就被卸载(删除成功,行已经移除),内联失去挂载点,需要一个短暂的行内幽灵或相邻行的说明,否则只能退到仍点得名对象的回执。跨页动作(在对话框里确认,结果发生在背后的列表)对话框关闭后内联才可见,若用户没看到列表,仍会觉得脱节,应在关闭前把结局说完再揭示列表上的内联态。全局事态(账号只读)本来就不是对象结局,硬内联到某一行会制造反向脱节:把环境写成了这一行的失败。

怎么落地

  • 对象级结果禁止只出现在全局槽;全局槽留给换页仍为真的环境。
  • 删除类成功用「行消失 + 可撤销」表达结局,不要只靠顶栏一句「已删除」而行还在或已经无痕迹。
  • 列表重排时把结果态写在数据上,而不是写在屏幕坐标上,让挂钩随对象走。
  • 验证:同时操作不相邻的两行,只看全局槽。若无法说出各自结局,脱节已经发生;再看行上有没有各自的标记。

延伸

  • 同组E6.13.1 内联反馈把结果显示在触发操作的位置附近 · E6.13.3 内联反馈需要与常态内容在视觉上可区分 · E6.13.4 批量操作的内联反馈需要区分成功与失败的子项
  • 相邻E6.04 全局状态提示 · E6.01 吐司提示 · E4.02 列表项
  • 站内检索result-object coupling · global receipt · attribution

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E6.13.2