Skip to content

FxDateTimePicker 日期时间选择器

在一个选择器中同时选择日期与时间。

TIP

日期时间选择由 FxDatePickertype=datetime / datetimerange 提供,本页集中演示其日期时间场景。更详细的属性说明可参考 FxDatePickerFxTimePicker

本页能力属于 @fx/components

日期时间

type 设置为 datetime 即可在同一选择器中选择日期与时间。快捷选项的用法与日期选择器一致。

日期时间格式

format 控制输入框显示文本的格式;用 value-format 控制绑定值的格式。默认情况下,组件接受并发射 Date 对象。

WARNING

注意大小写

面板内的日期时间格式

date-formattime-format 控制下拉面板内输入框中显示文本的格式。

日期时间范围

type 设置为 datetimerange 即可选择日期时间范围。

单面板

默认情况下日期范围选择器有两个面板。如需单面板,设置 single-panel 属性。

起止日期的默认时间

typedatetimerange 时,起止日期的默认时间均为 00:00:00。可通过 default-time 改变,接受最多两个 Date 对象的数组。

自定义图标

通过插槽可使用自定义图标。

扩展能力

除上述能力外,FxDatePicker 在 datetime / datetimerange 类型下还支持失焦保存(save-on-blur)、聚焦自动展开(automatic-dropdown)、触发表单校验(validate-event)等扩展属性,详见下方 API。

API

Attributes

属性说明类型默认值
model-value / v-model绑定值,range 时数组长度为 2number | string | Date | array
readonly是否只读booleanfalse
disabled是否禁用booleanfalse
editable输入框是否可键入booleantrue
clearable是否显示清空按钮booleantrue
size输入框尺寸'large' | 'default' | 'small'default
placeholder非范围模式的占位string
start-placeholder范围模式起始占位string
end-placeholder范围模式结束占位string
arrow-control是否使用箭头按钮选时间booleanfalse
type选择器类型'year' | 'month' | 'date' | 'datetime' | 'week' | 'datetimerange' | 'daterange'date
format输入框显示格式stringYYYY-MM-DD HH:mm:ss
popper-class下拉自定义类名string
popper-style下拉自定义样式string | object
popper-options透传浮层选项object{}
fallback-placements浮层备选位置列表Placement[]['bottom','top','right','left']
placement浮层位置Placementbottom
range-separator范围分隔符string'-'
default-value默认聚焦日期Date | [Date, Date]
default-time选日期时使用的时间Date | [Date, Date]
value-format绑定值格式,未指定则绑定 Date 对象string
date-format面板内日期显示格式stringYYYY-MM-DD
time-format面板内时间显示格式stringHH:mm:ss
id原生 idstring | [string, string]
name原生 namestring | [string, string]
unlink-panels范围模式两面板独立翻月booleanfalse
single-panel范围模式仅展示一面板booleanfalse
prefix-icon自定义前缀图标string | Componentep:calendar
clear-icon自定义清空图标string | Componentep:circle-close
shortcuts快捷选项数组Array<{ text: string; value: Date | Function }>
disabled-date禁用日期判定函数,返回 Boolean(date: Date) => boolean
disabled-hours禁用小时(role: string, comparingDate?: Dayjs) => number[]
disabled-minutes禁用分钟(hour: number, role: string, comparingDate?: Dayjs) => number[]
disabled-seconds禁用秒(hour: number, minute: number, role: string, comparingDate?: Dayjs) => number[]
cell-class-name单元格自定义类(date: Date) => string
teleported是否将下拉挂载到 bodybooleantrue
empty-values组件的空值列表array
value-on-clear清空时回填的值string | number | boolean | Function
show-now是否显示「此刻」按钮booleantrue
show-footer是否显示底部按钮区booleantrue
show-confirm是否显示确认按钮booleantrue
show-week-number是否显示周数booleanfalse
save-on-blur失焦时是否保存当前时间值booleantrue
automatic-dropdown聚焦输入框时自动展开面板booleantrue
validate-event是否触发表单校验booleantrue
tabindex输入框 tabindexstring | number0
aria-labela11y 标签string

Events

事件名说明类型
change用户确认选值或点击外部时触发(val) => void
blur输入框失焦时触发(e: FocusEvent) => void
focus输入框聚焦时触发(e: FocusEvent) => void
clear点击清空按钮时触发() => void
calendar-change面板日期交互时触发,仅 range(val: [Date, null | Date]) => void
panel-change点击导航按钮时触发(date: Date | [Date, Date], mode: 'month' | 'year', view?: string) => void
visible-change下拉显隐时触发(visible: boolean) => void

Slots

插槽名说明
default自定义单元格内容
range-separator自定义范围分隔内容
prev-month上月导航图标
next-month下月导航图标
prev-year上年导航图标
next-year下年导航图标

Exposes

方法说明类型
focus聚焦输入框() => void
blur失焦输入框() => void

类型声明

展开查看
ts
type Placement =
  | 'top'
  | 'top-start'
  | 'top-end'
  | 'bottom'
  | 'bottom-start'
  | 'bottom-end'
  | 'left'
  | 'left-start'
  | 'left-end'
  | 'right'
  | 'right-start'
  | 'right-end'