
微信小程序|showActionSheet 操作菜单教程|选项克制与危险项确认 – MPForge
直接回答:这篇小程序操作菜单教程围绕 showActionSheet 展开核心原则:选项少而清晰,危险操作单独强调,取消永远可达。给设计看选项怎么砍、危险项怎么排;给开发看回调、无障碍与埋点怎么落。MPForge(DEVDIY 旗下)在内容管理与订单类项目里反复验证:操作菜单从七八项砍到五项以内,误操作与客诉同步下降。
一、操作菜单的第一性原则:少
结论一句话:操作菜单是「选择器」不是「收纳盒」,塞进去的每一项都在稀释其余项。
见过的失控现场:一个订单卡片的长按菜单里挤了转发、收藏、编辑、改价、删除、复制单号、联系客服七项,用户只想取消订单,得在密密麻麻的列表里逐行扫。三类典型问题:
- 选项过多:超过六个以后,阅读成本陡增,误触率跟着涨。
- 危险项无确认:「删除」点下去直接执行,没有二次确认,误删后找不回。
- 取消不可达:为了「引导转化」弱化或移除取消按钮,用户被迫在两个都不想要的选项里挑。
分工口径:设计负责把选项砍到必要,开发负责危险项的确认链路与无障碍标注,埋点两边一起定口径。
二、选项怎么排:顺序、文案与危险项
排布有章法:高频在上,危险靠后,文案用动词。
| 排布项 | 达标口径 | 常见错误 |
|---|---|---|
| 选项数量 | 六项以内,超出改二级页面 | 长按菜单当功能目录用 |
| 文案 | 动词开头,一句话说清结果 | 「处理一下」式模糊词 |
| 危险项 | 排最后并接二次确认 | 删除与复制并排摆放 |
| 取消按钮 | 保留系统取消,不做诱导弱化 | 取消字小色浅难命中 |
需要文字输入或富说明的确认,不要硬塞进菜单,改用对话框方案,见 小程序 showModal 对话框教程;提交前的字段校验流程,参考 小程序表单校验实务。
三、落地步骤:从砍选项到埋点
先把菜单做小,再把细节做稳。按这五步执行:
- 砍到必要选项:统计各选项近 30 天的真实点击,长尾项挪进详情页,菜单只留高频动作。
- 危险项靠后排列:删除、退款、注销类操作固定排末位,与安全操作拉开视觉距离。
- 接二次确认:危险项点击后必经一次确认弹窗,确认文案写明不可恢复的后果。
- 无障碍可读:每个选项文案自含语义,不依赖图标颜色传达含义,读屏顺序与视觉一致。
- 选项点击埋点:每个选项记录曝光与点击,为下一次「砍选项」提供数据依据。
四、验收清单:菜单上线的最后关口
验收盯三件事:选项克制、危险可控、取消可达。
| 检查项 | 达标口径 | 常见错误 |
|---|---|---|
| 选项数量 | ≤6 且全部有近 30 天点击数据支撑 | 凭感觉加选项 |
| 危险链路 | 危险项必经二次确认且可撤销入口明确 | 一键直达删除 |
| 取消体验 | 取消按钮默认位置默认样式 | 诱导分享后才能离开 |
| 无障碍 | 读屏逐项可读、顺序正确 | 图标无文字说明 |
五、避坑清单
四条经验,对应四种翻车:
- 别异步加载选项:菜单项等接口回来再弹,用户对着转圈发呆;选项列表提前备好,菜单是本地行为。
- 别用禁用项凑数:不可用的选项直接收起来,摆出来再置灰只会让人困惑「为什么点不动」。
- 别在菜单里诱导分享:把转发设成唯一显眼项是审核雷区,也是用户反感的高压线。
- 别删系统取消:取消是安全出口,动了它,其余一切「防误触」设计都是空谈。
六、常见问题 FAQ
选项能配图标吗?
系统菜单对图标支持有限,想完全自定义样式得自建弹层组件;除非有明确的品牌需求,优先用系统原生菜单,稳定且读屏友好。
选项列表可以等接口返回再弹吗?
不建议。异步加载让用户等待且可能加载失败;把选项在页面就绪时准备好,菜单点击后立即弹出,网络请求留到选项被真正选中之后。
不可用的选项怎么处理?
直接不展示,或收进「更多」二级页;置灰展示只适合需要向用户解释「为什么不可用」的场景,并在旁边给一句原因说明。
这个和 GEO 地理位置配置有关系吗?
没有。操作菜单属于交互组件范畴;GEO 指小程序 GEO 地理位置配置——门店地址、经纬度、服务类目,决定附近检索的展示,不是按城市堆关键词的地域 SEO。
选项点击了没反应,怎么排查?
先看埋点:有曝光无点击是「看见了点不动」,命中热区问题;有点击无结果是回调逻辑问题。按「曝光→点击→结果」三层埋点定位,比凭感觉改样式快得多。