Skip to content

引入组件 ​

局部引入

ts
// parent.vue
const FDatetime = defineAsyncComponent(() => import('@/components/formaui/f-datetime/f-datetime.vue'))

基础用法 ​

通过 ref 调用 show 方法显示选择器,需在组件初始化完成后调用。

html
<f-button width="200rpx" margin="24rpx auto" @click="openPicker">选择日期时间</f-button>
<f-datetime ref="datetimeRef" :type="1" title="请选择" @confirm="onConfirm" />

<view v-if="result">选择结果:{{ result }}</view>
ts
import { ref } from 'vue'
import type { FDatetimeConfirmDetail } from '@/components/formaui/f-datetime/types'

const datetimeRef = ref<{ show: () => void; hide: () => void } | null>(null)
const result = ref('')

const openPicker = () => {
  datetimeRef.value?.show()
}

const onConfirm = (detail: FDatetimeConfirmDetail) => {
  result.value = detail.result
  datetimeRef.value?.hide()
}

选择类型 ​

type 属性:显示类型(默认 1)

值说明
0年
1年月日 + 时分
2年月日
3年月
4时分
5时分秒
6分秒
7年月日 + 时分秒
8年月日 + 小时
html
<f-datetime ref="datetimeRef" :type="2" @confirm="onConfirm" />

设置默认值 ​

defaultValue 属性:默认显示日期,如 2019-08-01、2019-08-01 17:01、2019/08/01

html
<f-datetime ref="datetimeRef" :type="1" default-value="2019-08-01 17:01" @confirm="onConfirm" />

插槽 ​

名称说明
--

属性 ​

名称类型说明默认值
typenumber显示类型,见上方表格(0~8)1
startYearnumber年份区间起始年1940
endYearnumber年份区间结束年2050
hoursDatanumber[]小时可选区间,如 [15,20],设置后默认区间失效[]
minutesDatanumber[]分钟可选区间,如 [15,30,45][]
secondsDatanumber[]秒数可选区间,如 [0,30][]
titlestring标题-
titleSizestring标题字号34rpx
titleColorstring标题颜色#0b1d4a
cancelTextstring取消按钮文字取消
cancelColorstring取消按钮颜色#8d94a6
confirmTextstring确定按钮文字确定
confirmColorstring确定按钮颜色#16479D
defaultValuestring默认显示值-
isUnitTopboolean单位是否置顶false
isRadiusboolean是否圆角false
headerBgColorstring头部背景色#FFFFFF
bodyBgColorstring选择器背景色#FFFFFF
unitBgColorstring单位条背景色(置顶时)#FFFFFF
heightstring滚动区域高度520rpx
closeOnClickMaskboolean点击遮罩是否关闭并触发 canceltrue
zIndexnumberz-index998

事件 ​

事件名说明回调参数
confirm点击确定时触发FDatetimeConfirmDetail,含 result 及年月日时分秒字段
cancel点击取消或点击遮罩关闭时触发-

方法 ​

方法名说明传入参数
show显示日期时间选择器-
hide隐藏日期时间选择器-