TimePicker 时间选择器

用于选择或输入时间,支持小时、时分、时分秒以及时间范围等多种类型,采用滚动选择交互。

基础用法
默认为时分秒类型(type='time'),通过 v-model 绑定时间字符串(HH:mm:ss 格式):
请选择时间

当前值:未选择

小时选择
设置 type='hour',仅选择小时,v-model 绑定为 HH 格式:
请选择小时

当前值:未选择

时分选择
默认 type='time' 包含时分秒列,可通过 format='HH:mm' 隐藏秒列,v-model 绑定为 HH:mm 格式:
请选择时分

当前值:未选择

时间范围选择
设置 type='timerange',可选择开始时间和结束时间,左右两个选择面板独立操作,v-model 绑定为 [开始时间, 结束时间] 数组:
开始时间结束时间

? ~ ?

格式化显示
通过 format 自定义显示格式,支持 HH、mm、ss 占位符。format 同时控制显示列(不含 ss 则隐藏秒列):
HH时mm分
HH:mm
不同尺寸
设置 size 属性使用三种预设尺寸:
小尺寸
中等尺寸
大尺寸
可清空与禁用
clearable 属性使选择器显示清除按钮,disabled 属性禁用选择器:
10:30:00×
09:00:00
禁用部分时间
通过 disabledHours、disabledMinutes、disabledSeconds 函数禁用特定时间选项,函数返回需要禁用的时间数值数组:
禁用部分时间

API

Props

参数类型默认值说明
modelValuestring | [string, string]''绑定值,timerange 类型为二元数组
type'hour' | 'time' | 'timerange''time'选择器类型:hour 仅选择小时,time 选择时分秒,timerange 选择时间范围
placeholderstring'请选择时间'未选择时的占位文本
startPlaceholderstring'开始时间'时间范围选择的开始占位文本
endPlaceholderstring'结束时间'时间范围选择的结束占位文本
disabledbooleanfalse是否禁用
clearablebooleanfalse是否可清空
size'sm' | 'md' | 'lg''md'选择器尺寸
formatstring显示格式,支持 HH、mm、ss 占位符。不含 ss 则隐藏秒列,不含 mm 则隐藏分列
disabledHours() => number[]禁用小时函数,返回禁用的小时数值数组
disabledMinutes(hour: number) => number[]禁用分钟函数,接收当前小时,返回禁用的分钟数值数组
disabledSeconds(hour: number, minute: number) => number[]禁用秒函数,接收当前小时和分钟,返回禁用的秒数值数组

Events

事件名参数说明
update:modelValue(value: string | [string, string] | undefined) => void值变化时触发
change(value: string | [string, string] | undefined) => void确认选择时触发