Skip to content

EDatePicker(日期选择器)

el-date-picker 简单封装,用于日期选择器相关的画布展示与交互配置。

属性配置

属性配置示意图

配置说明
禁用disabled 参数,默认不开启
只读readonly 参数,默认不开启
可输入editable 参数,默认开启
清除按钮clearable 参数,默认开启
占位文本placeholder 参数,默认无
日期类型type 参数,支持 date(日期)、datetime(日期时间)、month(月)、year(年)等,默认 date
默认值默认无,通过编辑 JS 函数返回 Date 对象
输入框格式format 参数,默认 YYYY-MM-DD
面板日期格式date-format 参数,默认 YYYY-MM-DD,仅在 type 为 datetime 时生效
面板时间格式time-format 参数,默认 HH:mm:ss,仅在 type 为 datetime 时生效
禁用日期disabled-date 参数,默认无,接受一个 Date 参数,返回 Boolean 值,通过 JS 函数编写
禁用小时disabled-hours 参数,默认无,返回数组,通过 JS 函数编写
禁用分钟disabled-minutes 参数,默认无,返回数组,通过 JS 函数编写
禁用秒disabled-seconds 参数,默认无,返回数组,通过 JS 函数编写
快捷选项shortcuts 参数,默认无,配置快捷名称与对应的值
前缀图标prefix-icon 参数,默认无
清除图标clear-icon 参数,默认无
大小size 参数,可选 large / default / small,默认无
自定义样式默认不开启,开启后可配置字体大小、字体粗细、字体类型、字体样式等

默认值示例

js
return new Date();

禁用日期示例

以下示例中,每月仅允许选择 1 日、11 日、21 日:

js
let date = param.date;
if (!(date instanceof Date) || isNaN(date.getTime())) {
  return true
}
const day = date.getDate();
return day !== 1 && day !== 11 && day !== 21;

快捷选项

通过弹框配置快捷选项,主要配置显示文本(text)和值(value),其中 value 通过自定义函数返回 Date 对象。

TIP

在自定义函数中,会传入 param 参数以便使用。可以通过 param.context 获取注入的辅助方法,在禁用日期函数中可通过 param.date 获取传入的日期进行判断。

param.context提供日期相关的一些方法

方法说明
isDate(date)判断是否是日期
getDate(_date)获取日期
formatDate(_date, format)格式化日期
addHours(date, hours)增加小时数
addDays(date, days)增加天数
addMonths(date, months)增加月数
addYears(date, years)增加年数
getStartOfDay(date)获取日初时间
getStartOfMonth(date)获取月初时间
getStartOfYear(date)获取年初时间

数据配置

数据配置示意图

配置说明
取值缓存从数据缓存中获取日期值
存值缓存将日期值写入数据缓存
禁用缓存地址从数据缓存中获取禁用状态,值为 true 时按钮禁用,否则正常

值改变事件

当勾选或取消勾选时触发值改变事件,可以从组件局域参数中获取selectedValue,其值为时间戳

基于 VitePress 构建