Query 查询栏 2.14.1 ​

用于后台列表页的高密度筛选条。它通过组合式结构连接标签与任意 Vue 3 表单控件,并统一处理布局、操作区和高级筛选。

基础用法 ​

使用 QueryItem 组织每个筛选条件。组件不会接管字段数据,表单状态仍由业务通过 v-model 管理。默认仅显示筛选按钮;示例通过 show-reset 额外启用了重置按钮。操作按钮会跟随最后一个筛选项参与换行。

修改条件后点击查询

混合表单控件 ​

内容插槽可以放置 Input、Select、DatePicker、InputNumber 或业务自定义控件。通过 width、min-width 和 grow 控制项目宽度。

支持 Input、Select、DatePicker、InputNumber 等任意控件

三段并联 ​

QueryItem 可以组合左侧标签、中间默认插槽和右侧 append 插槽。三个区域都支持自定义内容;组件会处理常用表单控件的边框重叠、外侧圆角和聚焦层级。左侧需要放置 Select、Input 或业务组件时,将 label-mode 设置为 control,再通过 label 插槽传入组件。

尺寸 ​

通过 size 统一控制筛选条、内部表单控件和操作按钮,支持 large、default、compact 2.14.4 和 small。其中 compact 高度为 28px,适合希望比默认尺寸更紧凑、又不想使用 24px 小尺寸的场景。

Large

Default

Compact

Small

标签对齐 ​

使用 label-align 分别设置标签左对齐、居中或右对齐。

高级筛选 ​

通过 advanced 插槽声明次要筛选项,并使用 v-model:expanded 控制展开状态。

展开状态:已收起;高级条件按需展示

自定义标签和操作区 ​

使用 label 与 actions 插槽扩展业务内容。actions 插槽会提供 search、reset 和 toggle 方法。

操作区、标签区和内容区均可通过插槽定制

完整属性配置 ​

下面的示例集中演示尺寸、标签宽度与对齐、项目宽度与间距、加载状态、默认操作按钮、高级筛选、无障碍标签以及三段 append 用法。

Query Item 属性总览 ​

下面集中展示 QueryItem 的属性和插槽。第二个筛选项启用 grow 后,会在保留 min-width 的前提下占满当前行的剩余空间;第三个筛选项展示左、中、右三个区域都使用表单控件的写法。

Query API 2.14.1 ​

属性 ​

名称说明类型默认值
expanded / v-model:expanded高级筛选是否展开booleanfalse
size内部控件与按钮尺寸enumdefault
label-width默认标签宽度,未指定时根据标签文本宽度适配string / numberauto
item-width默认筛选项宽度string / number260
gap筛选项之间的间距string / number8
loading搜索按钮是否处于加载状态booleanfalse
show-search是否显示默认搜索按钮booleantrue
show-reset是否显示默认重置按钮booleanfalse
collapsible是否显示高级筛选展开按钮booleanfalse
search-text搜索按钮文案stringSearch
reset-text重置按钮文案stringReset
expand-text展开按钮文案stringMore
collapse-text收起按钮文案stringLess
aria-label查询区域的无障碍标签stringQuery conditions

事件 ​

名称说明类型
search点击默认搜索按钮时触发Function
reset点击默认重置按钮时触发Function
update:expanded展开状态变化时触发Function

插槽 ​

名称说明类型
default主要筛选项—
advanced可折叠的高级筛选项—
actions自定义操作区object

暴露 ​

名称说明类型
toggle切换高级筛选展开状态Function
expand展开高级筛选Function
collapse收起高级筛选Function

Query Item API 2.14.1 ​

属性 ​

名称说明类型默认值
label筛选项标签string''
label-mode左侧区域的展示模式enumtext
label-align标签内容的水平对齐方式enumleft
label-width当前筛选项标签宽度string / number—
width当前筛选项宽度string / number—
min-width当前筛选项最小宽度string / number—
append-width右侧追加区域宽度string / number42%
grow是否占用剩余空间booleanfalse
aria-label当前筛选项的无障碍标签string—

插槽 ​

名称说明
default表单控件或业务内容
label自定义标签内容;控件需配合 label-mode="control"
append右侧并联的表单控件或业务内容

源代码 ​

组件 • 样式 • 文档

贡献者 ​