Skip to content

TimePicker 时间选择器

用于选择或输入时间。

基础用法

通过点击输入框,在弹出的时间面板中选择时间。

🕐
选择的时间:
vue
<template>
  <x-time-picker v-model="value" placeholder="请选择时间" />
</template>

<script setup>
import { ref } from 'vue'
const value = ref('')
</script>

时间格式

使用 format 指定输入框的展示格式。

🕐
vue
<template>
  <x-time-picker v-model="value" format="HH:mm" placeholder="选择时分" />
</script>

时间范围选择

设置 typetimerange 可以选择时间范围。

🕐
vue
<template>
  <x-time-picker
    v-model="value"
    type="timerange"
    start-placeholder="开始时间"
    end-placeholder="结束时间"
  />
</template>

<script setup>
import { ref } from 'vue'
const value = ref(['', ''])
</script>

禁用时间

通过 disabledHoursdisabledMinutesdisabledSeconds 可以禁用指定的时间。

🕐
vue
<template>
  <x-time-picker v-model="value" placeholder="禁用上午时间" :disabled-hours="disabledHours" />
</template>

<script setup>
import { ref } from 'vue'
const value = ref('')

// 禁用 0-11 点
const disabledHours = () => {
  return [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
}
</script>

时间步长

使用 hour-stepminute-stepsecond-step 设置时间间隔。

🕐
vue
<template>
  <x-time-picker v-model="value" placeholder="整点选择" :minute-step="30" :second-step="0" />
</template>

可清空

使用 clearable 属性即可得到一个可清空的时间选择器。

🕐
vue
<template>
  <x-time-picker v-model="value" clearable placeholder="可清空" />
</template>

禁用状态

🕐
vue
<template>
  <x-time-picker disabled placeholder="禁用状态" />
</template>

不同尺寸

🕐
🕐
🕐
vue
<template>
  <x-time-picker size="large" placeholder="大型" />
  <x-time-picker placeholder="默认" />
  <x-time-picker size="small" placeholder="小型" />
</template>

API

Props

属性说明类型默认值
modelValue绑定值Date | string | number | [Date | string | number, Date | string | number]
type选择类型'time' | 'timerange''time'
placeholder占位文本string'请选择时间'
startPlaceholder开始时间占位string'开始时间'
endPlaceholder结束时间占位string'结束时间'
disabled是否禁用booleanfalse
readonly是否只读booleanfalse
clearable是否可清空booleanfalse
size输入框尺寸'large' | 'default' | 'small''default'
format显示格式string'HH:mm:ss'
valueFormat绑定值格式string
disabledHours禁用小时() => number[]
disabledMinutes禁用分钟(hour: number) => number[]
disabledSeconds禁用秒(hour: number, minute: number) => number[]
hourStep小时步长number1
minuteStep分钟步长number1
secondStep秒步长number1

Events

事件名说明回调参数
update:modelValue值改变时触发(value: Date | string | [Date | string, Date | string] | null)
change值改变时触发(value: Date | string | [Date | string, Date | string] | null)
focus获得焦点时触发(event: FocusEvent)
blur失去焦点时触发(event: FocusEvent)
clear清空时触发

格式说明

格式说明示例
HH小时(24小时制,补零)00-23
H小时(24小时制)0-23
mm分钟(补零)00-59
m分钟0-59
ss秒(补零)00-59
s0-59

基于 MIT 许可发布