Skip to content
返回设计中心

设置面板设计

组织偏好、即时 vs 应用时存、搜索设置模式。

UX 模式进阶

为什么

设置面板长成 100 选项迷宫,用户找不到所需切换。好分组、低风险偏好即时应用、搜索设置框使其任何规模可用。

Nielsen Norman Group 研究显示用户在离开前平均停留 10-15 秒。清晰的视觉层次和渐进式披露将任务完成率提高 40-60%。

何时使用

任何 >10 用户可配置偏好的应用:通知、外观、隐私、集成。即使 10 设置也受益于分组而非平列表。

如何做

1. 按意图分组 — 账户、外观、通知、隐私、集成;非按特性团队 2. 侧栏导航 — 左侧栏分组、右窗选项;扩到 100+ 设置 3. 即时应用 — 切换(暗模式、通知)即时应用;无保存按钮 4. 应用时存 — 破坏性或批量变更(删账户、重置数据)需确认 5. 搜索设置 — 顶搜索框跨所有组过滤;Cmd+K 可路由到此 6. 默认 — 发合理默认;绝不让用户首用前配置 7. 描述 — 每切换有一行描述;用户不应猜其作用 8. 重置 — 每区段 "重置为默认";用户无惧实验

示例

function Settings() { return ( <div className="grid grid-cols-[200px_1fr]"> <nav> <NavLink to="account">账户</NavLink> <NavLink to="appearance">外观</NavLink> <NavLink to="notifications">通知</NavLink> <NavLink to="privacy">隐私</NavLink> </nav> <main> <SearchSettings placeholder="搜索设置…" /> {/* 跨所有组过滤 */} <Routes> <Route path="appearance" element={<Appearance />} /> {/* … */} </Routes> </main> </div> ); } function Appearance() { const [theme, setTheme] = useSetting("theme", "system"); // 即时应用 return ( <section> <h2>外观</h2> <RadioGroup value={theme} onChange={setTheme}> <Radio value="light">浅色 <small>亮室最佳</small></Radio> <Radio value="dark">深色 <small>夜间最佳</small></Radio> <Radio value="system">系统 <small>跟随 OS</small></Radio> </RadioGroup> <button onClick={resetSection}>重置为默认</button> </section> ); }

常见问题

  • ⚠50 切换平列表 — 用户滚不尽,找不到所需
  • ⚠即时应用偏好用保存按钮 — 用户切暗模式,保存前无反应,困惑
  • ⚠无描述 — '启用 X' 无解释,用户不知是否想要

最佳实践

  • ✓按用户意图分组(账户、外观、隐私)— 非按拥有特性的团队
  • ✓低风险切换即时应用 — 暗模式、通知;无需保存按钮
  • ✓加搜索设置框 — 50+ 设置时搜索比任何导航结构快

常见问题解答