跳到主要内容
界面图谱Interface Atlas
☰
EN
交互模式Search / Navigation

搜索筛选

Search Filtering

别名:搜索筛选列表过滤即时搜索输入即搜关键字过滤筛选列表

这是什么

用即时过滤把大列表缩到与当前输入相关的一小部分:用户在搜索框敲字,列表随之实时收窄, 并显示命中数量与空结果提示。它把"查找"变成"修剪",不用提交、不用等跳转,反馈就在眼前。

交互实验室

试一试,再决定怎么用

正在加载实验室…

✓ 适用场景

  • 列表条目在几十到几百条,一次加载即可全量过滤
  • 用户记得目标的部分名称或标签,扫视比翻页快
  • 设置、通讯录、组件库等查找型页面

✕ 不适用场景

  • 数据在海量服务端集合上,必须走后端搜索
  • 条目本身无明显关键词可匹配
  • 需要复杂多维条件组合,应交给筛选面板

常见形式

即时过滤

Instant

输入即过滤,无提交按钮

标签筛选

Filter chips

点标签按类目过滤,可与搜索叠加

命中高亮

Highlight

匹配片段标亮,帮助确认为什么命中

实现要点

transitionmark:placeholder-shownbackground-color

受控输入 + useMemo 过滤(大小写不敏感的 includes 起步),列表项配 transition 或淡入。 显示命中数;零命中展示空状态与清除按钮;命中片段用 mark 或强调色标亮。输入加 type="search" 与 aria-label,防抖仅在触发远端请求时才需要。尊重 prefers-reduced-motion。

相关概念

筛选面板Filter Panel

集中承载筛选条件的面板,常驻列表侧边或以抽屉、浮层唤起:复选组、单选、滑杆组合出当前查询。 与列表实时联动刷新结果数,并支持已选条件回显与一键清除。

组件搭配使用
命令面板Command Palette

用快捷键(⌘K / Ctrl+K)唤出的浮动搜索面板:输入即筛选命令、页面或内容, 键盘上下选择、回车执行。macOS Spotlight 把它带入大众视野, 现在是效率工具和开发者产品的标配。

组件搭配使用
输入框Input

用一条带边框的水平输入区收集单行文本,是表单的基本单元。 占位符提示期望格式,聚焦时高亮边框引导视线,校验失败时切换错误色 并附提示文案;可内嵌前后缀图标与清除按钮,受控管理输入值。

组件搭配使用
空状态Empty State

当列表或页面没有数据时,不留一片空白,而是用插图、一句说明和一个明确的下一步操作填充。 它解决的是"用户面对空白不知道发生了什么、也不知道该做什么"的问题—— 把空档变成引导起点:首次使用教用户开始,搜索无结果给出路。

交互模式相似概念
无限滚动Infinite Scroll

用"滚动到底自动追加下一页"取代传统分页:用户持续下滑,新内容不断出现, 底部以加载指示或哨兵元素衔接。它解决的是浏览节奏被打断的问题—— 用户不必寻找"下一页"按钮,注意力始终停留在内容流上,长列表被拆成一次次无感的追加。

交互模式相似概念

可搭配的风格

参考来源

Markdown 版(给 Agent) · JSON