DatePicker 日期选择器
该组件是低代码平台中用于日期或时间范围选择的表单项,基于 Element Plus 的 <el-date-picker> 封装,支持多种类型(单日、日期范围、月份、年份等)、自定义格式、快捷选项、禁用逻辑及动态范围限制,并深度集成表单容器(<el-form>)的数据绑定与校验体系。
基础属性
| 属性 | 类型 | 说明 |
|---|---|---|
是否支持一键清空 clearable | boolean | 显示“×”按钮,点击清空已选日期(默认开启) |
文本框是否可输入 editable | boolean | 允许用户手动输入日期(默认开启) |
日期选择器类型 type | enum | 支持:date(日期)、datetime(日期时间)、daterange(日期范围)、datetimerange(日期时间范围)、month、year、monthrange、yearrange 等 |
是否宽度自适应 fullWidth | boolean | 组件宽度撑满容器 |
显示格式 format | string | 日期在输入框中的展示格式(如 YYYY-MM-DD) |
数值格式 valueFormat | string | 绑定值的格式(如 YYYY-MM-DD 或时间戳 x) |
日期默认时间值 defaultTime | string | 当类型为 date 或 datetime 时,选中日期后自动填充的时间(默认 00:00:00) |
开始日期默认时间值 startDefaultTime | string | 范围选择时起始日期的默认时间(默认 00:00:00,仅 daterange/datetimerange 生效) |
结束日期默认时间值 endDefaultTime | string | 范围选择时结束日期的默认时间(默认 23:59:59,仅 daterange/datetimerange 生效) |
向前偏移天数 beforeMinDays | number | 从当前日期往前推 N 天作为可选范围起点(仅适用于含日期的类型) |
向后偏移天数 afterMaxDays | number | 从当前日期往后推 N 天作为可选范围终点(仅适用于含日期的类型) |
最大日期跨度 maxDaysRange | number | 范围选择时,起止日期最大间隔天数(仅 daterange/datetimerange 生效) |
日期是否被禁用 disabledDate | function | $args[0] 为待判断的 Date 对象(范围模式下为 [start, end] 数组),返回 true 则禁用该日期 |
获取快捷选项 shortcuts | function | 返回 { text, value } 格式的快捷项数组(如同步返回 [{ text: '今天', value: new Date() }]) |
输入提示文本 placeholder | string | 单选模式下的占位提示(仅非范围类型生效) |
开始日期占位文本 startPlaceholder | string | 范围选择时起始输入框的占位文本(仅范围类型生效) |
结束日期占位文本 endPlaceholder | string | 范围选择时结束输入框的占位文本(仅范围类型生效) |
范围选择分隔符 rangeSeparator | string | 范围输入框中间的分隔文字(如 “至”) |
| 表单项基础配置 | — | 包含标签宽度、布局控制等通用表单项设置(来自 formItemBaseDefine) |
高级属性
| 属性 | 类型 | 说明 |
|---|---|---|
| 表单项高级配置 | — | 包含字段名(prop)、标签文本(label)等核心绑定配置(来自 formItemAdvDefine) |
事件
| 事件 | 触发时机 | 说明 |
|---|---|---|
change | 所选日期或范围发生变化时 | 对应 Element Plus 的 change 事件 |
