R后悔药 Rue.js
  • 首页
    • 深度指南
    • 实战例子
    • 快速上手
    • 路由指南
    • 术语表
    • 错误代码参考
  • API
    • 合作伙伴
    • 插件
    • 组件库
    • 工具链
    • Text.js
    • 新闻简报
    • 常见问题
    • 团队
    • 版本发布
    • 社区指南
    • 行为规范
    • 隐私政策
  • 赞助
  • 合作伙伴
设置
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window

Filter 筛选器

Filter 使用 Rue 当前的filter + btn视觉风格,在此基础上补了一层更顺手的 API: 可以使用Filter.Item/Filter.Reset组合写法,也可以直接用items、value、onChange组织整组筛选。

何时使用

  • 需要一排轻量筛选按钮,并保持 Rue 当前视觉。
  • 需要同时覆盖表单重置、即时切换和多选标签场景。
  • 需要在展示基础 compound 写法的同时,逐步切换到数据驱动写法。

推荐用法

推荐优先使用items模式,把筛选项、默认值和变体样式统一放到根组件上管理。

# 数据驱动与受控状态

当前阶段:all

# 多选筛选

已选择:search, alerts

# 样式覆盖

Tone Overrides
Sizes

# Filter using form

# Filter using div

# Filter with grouped options

每组筛选项都需要唯一的 name,并通过 aria-label 提供按钮文案。

API

当前页面展示的是语义化的 Filter API;基础的 compound 写法仍然可用。

Filter

属性说明类型默认值
as根节点模式,可选 form 或 div'form' | 'div''form'
items数据驱动筛选项,支持字符串、数字、布尔值或对象ReadonlyArray<FilterItemData | FilterValue>[]
name统一传给子项的 name;radio 模式未传时会自动生成分组名string-
type输入类型,决定单选或多选'radio' | 'checkbox''radio'
multiple多选快捷开关,等价于 type="checkbox"booleanfalse
value受控值;单选传单值,多选传数组FilterValue | FilterValue[]-
defaultValue非受控默认值;form 模式 reset 会回到该初始状态FilterValue | FilterValue[]-
onChange选中项变化回调,返回当前值与 values 元信息(value, event, meta) => void-
reset自动渲染 Reset,支持布尔或配置对象boolean | FilterResetPropsfalse
color整组默认颜色,单项可覆盖'default' | 'danger' | 'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error''default'
variant整组默认视觉变体'solid' | 'filled' | 'outlined' | 'dashed' | 'text''solid'
size整组默认尺寸,支持 xs-xl 与 small/middle/large 别名'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'small' | 'medium' | 'middle' | 'large'-

Filter.Item

属性说明类型默认值
label筛选项文案;会映射到 aria-labelany-
value筛选值;未传时会尝试使用 labelFilterValue-
checked / defaultChecked单项受控或非受控选中状态boolean-
color / variant / size覆盖根组件的按钮样式配置FilterColor / FilterVariant / FilterSize-
type单项输入类型,默认继承根组件'radio' | 'checkbox'继承

Filter.Reset

属性说明类型默认值
modeReset 的交互模式,form 为恢复默认值,div 为清空选中'form' | 'div'继承根组件
labelReset 文案;form 模式映射到 value,div 模式映射到 aria-labelany'×'
color / variant / sizeReset 按钮的样式覆盖FilterColor / FilterVariant / FilterSize继承

FAQ

什么时候用 form,什么时候用 div?

form适合表单内筛选,点击Reset会回到defaultValue对应的初始状态;div更适合即时交互场景,Reset 会直接清空当前选中。

为什么推荐使用 label 而不是只写 aria-label?

基础写法保持aria-label,但语义 API 下优先推荐label,这样在items模式里既能声明按钮文案,也更方便推导默认value。

受控模式和多选模式怎么返回值?

单选模式下,onChange返回单个值或undefined;多选模式下返回数组。 同时第三个参数里的values 会始终给出当前整组已选值,便于统一处理。

页内导航
页内导航
文档
  • 深度指南
  • 实战例子
  • 快速上手
  • 术语表
  • 错误码参照表
关于
  • 常见问题
  • 团队
  • 版本发布
  • 社区指南
生态
  • 插件
  • 组件库
  • 路由指南
  • Text.js
© 2024-2026 Xiangmin Liu
Rue.JS