Skip to content

DatetimePicker 日期时间选择

同时选择日期和时间的选择器。

基础用法

vue
<template>
  <button @click="show = true">选择日期时间</button>
  <text>{{ value }}</text>

  <dr-datetime-picker
    v-model:show="show"
    title="选择日期时间"
    @confirm="onConfirm"
  />
</template>

<script setup>
import { ref } from 'vue'

const show = ref(false)
const value = ref('')

const onConfirm = (e) => {
  value.value = e.value // 2024-12-13 14:30:00
}
</script>

精确到分

设置 mode="datetime-minute" 精确到分钟。

vue
<dr-datetime-picker
  v-model:show="show"
  mode="datetime-minute"
  title="选择日期时间"
  @confirm="onConfirm"
/>

限制日期时间范围

通过 min-datemax-date 限制可选范围。

vue
<script setup>
const minDate = new Date(2024, 0, 1, 9, 0, 0)
const maxDate = new Date(2024, 11, 31, 18, 0, 0)
</script>

<template>
  <dr-datetime-picker
    v-model:show="show"
    :min-date="minDate"
    :max-date="maxDate"
    title="选择日期时间"
  />
</template>

默认日期时间

通过 v-model 设置默认选中的日期时间。

vue
<dr-datetime-picker
  v-model:show="show"
  v-model="datetime"
  title="选择日期时间"
/>

<script setup>
const datetime = ref('2024-06-15 12:00:00')
</script>

API

Props

参数说明类型默认值
v-model:show是否显示booleanfalse
v-model当前选中日期时间string | Date''
mode模式:datetime datetime-minutestringdatetime
min-date最小可选日期时间string | Date十年前
max-date最大可选日期时间string | Date十年后
title标题string选择日期时间
show-toolbar是否显示工具栏booleantrue
confirm-text确认按钮文字string确定
cancel-text取消按钮文字string取消
mask-closable点击遮罩是否关闭booleantrue
z-index层级number5000

Events

事件名说明回调参数
confirm点击确认时触发{ value: string, date: Date }
cancel点击取消时触发-
change选择变化时触发{ value: string, date: Date }
close关闭时触发-

基于 MIT 许可发布