Skip to content

DateTimePicker 日期时间选择器

更新: 2025/1/20 字数: 0 字 时长: 0 分钟

说明

由于vant4版本没有日期时间选择器,所以用van-picker封装了一个

基本使用

选择单个日期

默认情况下,选择器会显示年、月、日,且为单个日期。

vue
<script setup lang="ts">
const time = ref();
</script>
<template>
  <DateTimePicker v-model="time" />
</template>

选择单个时间

如果需要选择单个时间,可以设置type['hour', 'minute', 'second']formatHH:mm:ss, v-model也可以设置默认时间,但格式需要与format一致。

vue
<script setup lang="ts">
const time = ref("19:28:00");
</script>
<template>
  <DateTimePicker
    v-model="time"
    :type="['hour', 'minute', 'second']"
    format="HH:mm:ss"
  />
</template>

选择日期时间

如果需要选择日期和时间,可以设置type['year', 'month', 'day', 'hour', 'minute', 'second']formatYYYY-MM-DD HH:mm:ss

vue
<script setup lang="ts">
const time = ref();
</script>
<template>
  <DateTimePicker
    v-model="time"
    :type="['year', 'month', 'day', 'hour', 'minute', 'second']"
    format="YYYY-MM-DD HH:mm:ss"
  />
</template>

选择日期范围

如果需要选择日期范围,可以设置v-model接收一个数组,数组的第一个元素为开始时间,第二个元素为结束时间。

vue
<script setup lang="ts">
const time = ref([]);
</script>
<template>
  <DateTimePicker v-model="time" range />
</template>

API

传参配置

参数说明类型默认值
v-model绑定值,格式需与format一致string|array-
type选择器的日期或时间类型,可选值为year, month, day, hour, minute, secondarray['year','month','day']
format显示在输入框中的日期或时间格式,需要参照dayjs的日期格式设置stringYYYY-MM-DD
placeholder单个日期时的占位提示文字string请选择日期
startPlaceholder日期范围开始时的占位提示文字string开始日期
endPlaceholder日期范围结束时的占位提示文字string结束日期
separate日期范围分隔符string

注意

由于type需传入数组,所以传值时注意时间的有效性,避免出现只有年月分秒等情况,

Released under the MIT License.

本站访客数 人次 本站总访问量