date-picker.d.ts
4.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
// Type definitions for iview 3.3.1
// Project: https://github.com/iview/iview
// Definitions by: yangdan
// Definitions: https://github.com/yangdan8/iview.git
import Vue, { VNode } from 'vue';
export declare class DatePicker extends Vue {
/**
* 显示类型,可选值为 date、daterange、datetime、datetimerange、year、month'|'默认值date
*/
type?: 'date' | 'daterange' | 'datetime' | 'datetimerange' | 'year' | 'month';
/**
* 日期,可以是 JavaScript 的 Date,例如 new Date(),也可以是标准的日期格式,点击右边查看
* 注意:value 使用 v-model 时,值是 Date 类型,可以配合 @on-change 使用
*/
value?: Date;
/**
* 展示的日期格式
* date | daterange?: yyyy-MM-dd
* datetime | datetimerange:yyyy-MM-dd HH:mm:ss
* year:yyyy
* month:yyyy-MM
*/
format?: string;
/**
* 日期选择器出现的位置,
* 可选值为top,top-start,top-end,
* bottom,bottom-start,bottom-end,
* left,left-start,left-end,
* right,right-start,right-end
* 2.12.0 版本开始支持自动识别
* @default bottom-start
*/
placement?: 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end'
/**
* 占位文本默认值空
* @default 空
*/
placeholder?: string;
/**
* 选择器额外配置,比如不可选日期与快捷选项,具体项详见下表
*/
options?: DatePickerOptions;
/**
* 开启后,左右面板不联动,仅在 daterange 和 datetimerange 下可用。
* @default false
*/
'split-panels'?: boolean;
/**
* 开启后,可以选择多个日期,仅在 date 下可用。
* @default false
*/
multiple?: boolean;
/**
* 开启后,可以显示星期数。
* @default false
*/
'show-week-numbers': boolean;
/**
* 设置默认显示的起始日期。
*/
'start-date'?: Date;
/**
* 是否显示底部控制栏,开启后,选择完日期,选择器不会主动关闭,需用户确认后才可关闭,
* @default false
*/
confirm?: boolean;
/**
* 手动控制日期选择器的显示状态,true 为显示,false 为收起。使用该属性后,选择器不会主动关闭。
* 建议配合 slot 及 confirm 和相关事件一起使用
* @default null
*/
open?: boolean;
/**
* 尺寸,可选值为large、small、default或者不设置
*/
size?: '' | 'large' | 'small' | 'default';
/**
* 是否禁用选择器
* @default false
*/
disabled?: boolean;
/**
* 是否显示清除按钮
* @default true
*/
clearable?: boolean;
/**
* 完全只读,开启后不会弹出选择器,只在没有设置 open 属性下生效
* @default false
*/
readonly?: boolean;
/**
* 文本框是否可以输入,只在没有使用 slot 时有效
* @default true
*/
editable?: boolean;
/**
* 是否将弹层放置于 body 内,在 Tabs、带有 fixed 的 Table 列内使用时,
* 建议添加此属性,它将不受父级样式影响,从而达到更好的效果,
* @default false
*/
transfer?: boolean;
/**
* 给表单元素设置 id,详见 Form 用法。
*/
'element-id'?: string;
/**
* 可以在 type 为 datetime 和 datetimerange 下,配置 TimePicker 的属性,
* 比如时间间隔 steps::time-picker-options="{steps: [1, 10, 10]}"
* @default {}
*/
'time-picker-options'?: object;
/**
* 两个日期间的分隔符
*/
'separator'?: string;
/**
* 日期发生变化时触发 已经格式化后的日期,比如 2016-01-01
*/
$emit(eventName: 'on-change', value: string): this;
/**
* 弹出日历和关闭日历时触发
*/
$emit(eventName: 'on-open-change', value: boolean): this;
/**
* 在 confirm 模式下有效,点击确定按钮时触发
*/
$emit(eventName: 'on-ok'): this;
/**
* 在 confirm 模式或 clearable = true 时有效,在清空日期时触发
*/
$emit(eventName: 'on-clear'): this;
/**
* 点击外部关闭下拉菜单时触发
*/
$emit(eventName: 'on-clickoutside',event: MouseEvent): this;
/**
* slot插槽对象
*/
$slots: {
/**
* 自定义选择器的显示内容,建议与 open 等参数一起使用,详见示例
*/
'': VNode[];
};
}
export declare class DatePickerOptions {
/**
* 设置快捷选项,每项内容:
* text:显示的文案
* value?: 返回指定的日期,如需自己控制逻辑,可不设置,并使用 onClick 回调
* onClick?: 点击时的回调,参数为当前日期选择器的 Vue 实例,当需要自定义复杂操作时,可以使用
*/
shortcuts?: { text?: string, value?: () => void, onClick?: () => void }[];
/**
* 设置不可选择的日期,参数为当前的日期,需要返回 Boolean 是否禁用这天
*/
disabledDate(): boolean;
}