TimePicker 时间选择器
该组件是低代码平台中用于选择单个时间点或时间范围的表单项,基于 Element Plus 的 <el-time-picker> 封装,支持格式化显示、禁用特定时间选项、默认值设置及范围选择,并深度集成表单容器(<el-form>)的数据绑定与校验体系。
基础属性
| 属性 | 类型 | 说明 |
|---|---|---|
是否支持一键清空 clearable | boolean | 显示“×”按钮,点击清空已选时间(默认开启) |
文本框是否可输入 editable | boolean | 允许用户直接在输入框中键入时间(默认开启) |
是否使用箭头选择 arrowControl | boolean | 使用上下箭头切换时间(替代滚轮) |
是否时间范围选择 isRange | boolean | 启用后可选择起止两个时间(如 09:00:00 - 18:00:00) |
是否宽度自适应 fullWidth | boolean | 组件宽度撑满容器 |
显示格式 format | string | 用户界面显示的时间格式(默认 'HH:mm:ss',支持 HH、mm、ss 等) |
数值格式 valueFormat | string | 表单绑定值的格式(如 'HH:mm'、Unix 时间戳用 'x') |
日期默认时间值 defaultTime | string | 非范围模式下,面板打开时默认选中的时间(如 '08:30:00') |
开始时间默认时间值 startDefaultTime | string | 范围模式下,起始时间面板的默认值(默认 '00:00:00') |
结束时间默认时间值 endDefaultTime | string | 范围模式下,结束时间面板的默认值(默认 '23:59:59') |
获取被禁用的小时选项 disabledHours | function | 返回禁止选择的小时数组(如 [0, 1, 2]) |
获取被禁用的分钟选项 disabledMinutes | function | $args[0] 为当前选中的小时,返回该小时下禁用的分钟数组 |
获取被禁用的秒选项 disabledSeconds | function | $args[0] 为小时,$args[1] 为分钟,返回该组合下禁用的秒数组 |
输入提示文本 placeholder | string | 单选模式下的占位提示(如 "请选择时间") |
开始时间占位文本 startPlaceholder | string | 范围模式下起始输入框的占位符 |
结束时间占位文本 endPlaceholder | string | 范围模式下结束输入框的占位符 |
范围选择分隔符 rangeSeparator | string | 范围模式中间的分隔符(如 "至"、"~",默认为 -) |
| 表单项基础配置 | — | 包含标签宽度、布局控制等通用表单项设置(来自 formItemBaseDefine) |
📌 格式说明:
format:仅影响 UI 显示;valueFormat:决定v-model绑定值的类型和格式(如'x'→ 时间戳数字,'HH:mm'→ 字符串)。
高级属性
| 属性 | 类型 | 说明 |
|---|---|---|
| 表单项高级配置 | — | 包含字段名(prop)、标签文本(label)等核心绑定配置(来自 formItemAdvDefine) |
事件
| 事件 | 触发时机 | 说明 |
|---|---|---|
change | 时间值确认后发生变化时 | 返回格式化后的值(单选为字符串/时间戳,范围为 [start, end] 数组) |
