UNPKG

uview-pro

Version:

uView Pro,是全面支持Vue3的uni-app生态框架,70+精选组件已使用TypeScript重构,已全面支持uni-app Vue3.0

124 lines (121 loc) 3.51 kB
import type { ExtractPropTypes, PropType } from 'vue'; import type { PickerMode, PickerParams } from '../../types/global'; const defaultParams: PickerParams = { year: true, month: true, day: true, hour: false, minute: false, second: false, province: true, city: true, area: true, timestamp: true }; /** * PickerProps 选择器 props 类型定义 * @description 支持时间、地区、单列、多列等多种模式 */ export const PickerProps = { /** picker中需要显示的参数 */ params: { type: Object as PropType<PickerParams>, default: () => defaultParams }, /** 当mode=selector或者mode=multiSelector时,提供的数组 */ range: { type: Array as PropType<any[]>, default: () => [] }, /** 当mode=selector或者mode=multiSelector时,提供的默认选中的下标 */ defaultSelector: { type: Array as PropType<any[]>, default: () => [0] }, /** range 是一个 Array<Object> 时,通过 range-key 来指定 Object key 的值作为选择器显示内容 */ rangeKey: { type: String, default: '' }, /** 模式选择,region-地区类型,time-时间类型,selector-单列模式,multiSelector-多列模式 */ mode: { type: String as PropType<PickerMode>, default: 'time' }, /** 年份开始时间 */ startYear: { type: [String, Number] as PropType<number | string>, default: 1950 }, /** 年份结束时间 */ endYear: { type: [String, Number] as PropType<number | string>, default: 2050 }, /** "取消"按钮的颜色 */ cancelColor: { type: String, default: '#606266' }, /** "确定"按钮的颜色 */ confirmColor: { type: String, default: '#2979ff' }, /** 默认显示的时间,2025-07-02 || 2025-07-02 13:01:00 || 2025/07/02 */ defaultTime: { type: String, default: '' }, /** 默认显示的地区,可传类似["河北省", "秦皇岛市", "北戴河区"] */ defaultRegion: { type: Array as PropType<any[]>, default: () => [] }, /** 时间模式时,是否显示后面的年月日中文提示 */ showTimeTag: { type: Boolean, default: true }, /** 默认显示地区的编码,defaultRegion和areaCode同时存在,areaCode优先,可传类似["13", "1303", "130304"] */ areaCode: { type: Array as PropType<any[]>, default: () => [] }, /** 是否开启底部安全区适配 */ safeAreaInsetBottom: { type: Boolean, default: false }, /** 是否允许通过点击遮罩关闭Picker */ maskCloseAble: { type: Boolean, default: true }, /** 通过双向绑定控制组件的弹出与收起 */ modelValue: { type: [Boolean, String, Number, Array, Object] as PropType<any>, default: false }, /** 弹出的z-index值 */ zIndex: { type: [String, Number] as PropType<number | string>, default: 0 }, /** 顶部标题 */ title: { type: String, default: '' }, /** 取消按钮的文字 */ cancelText: { type: String, default: '取消' }, /** 确认按钮的文字 */ confirmText: { type: String, default: '确认' } }; export type PickerProps = ExtractPropTypes<typeof PickerProps>;