@ray-js/smart-ui 2.13.2-beta-0 → 2.13.2-beta-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/es/@types/config-provider/index.d.ts +7 -2
  2. package/es/@types/config-provider/theme-vars.d.ts +1 -1
  3. package/es/action-sheet/README.md +613 -0
  4. package/es/battery/README.md +149 -0
  5. package/es/bottom-sheet/README.md +495 -0
  6. package/es/button/README.md +335 -0
  7. package/es/calendar/README.md +513 -0
  8. package/es/cascader/README.md +326 -0
  9. package/es/cell/README.md +317 -0
  10. package/es/checkbox/README.md +481 -0
  11. package/es/circle/README.md +132 -0
  12. package/es/col/README.md +162 -0
  13. package/es/collapse/README.md +127 -0
  14. package/es/config-provider/README.md +150 -0
  15. package/es/count-down/README.md +201 -0
  16. package/es/custom-keyboard/README.md +122 -0
  17. package/es/datetime-picker/README.md +438 -0
  18. package/es/dialog/README.md +451 -0
  19. package/es/divider/README.md +132 -0
  20. package/es/dropdown-menu/README.md +331 -0
  21. package/es/empty/README.md +119 -0
  22. package/es/field/README.md +455 -0
  23. package/es/grid/README.md +273 -0
  24. package/es/icon/README.md +178 -0
  25. package/es/image/README.md +225 -0
  26. package/es/index-bar/README.md +186 -0
  27. package/es/loading/README.md +120 -0
  28. package/es/nav-bar/README.md +410 -0
  29. package/es/notice-bar/README.md +274 -0
  30. package/es/notify/README.md +121 -0
  31. package/es/overlay/README.md +128 -0
  32. package/es/picker/README.md +412 -0
  33. package/es/popover/README.md +338 -0
  34. package/es/popup/README.md +272 -0
  35. package/es/progress/README.md +88 -0
  36. package/es/radio/README.md +423 -0
  37. package/es/rate/README.md +248 -0
  38. package/es/search/README.md +290 -0
  39. package/es/sidebar/README.md +176 -0
  40. package/es/skeleton/README.md +141 -0
  41. package/es/slider/README.md +444 -0
  42. package/es/stepper/README.md +231 -0
  43. package/es/sticky/README.md +91 -0
  44. package/es/swipe-cell/README.md +217 -0
  45. package/es/switch/README.md +316 -0
  46. package/es/tab/README.md +501 -0
  47. package/es/tabbar/README.md +397 -0
  48. package/es/tag/README.md +215 -0
  49. package/es/toast/README.md +293 -0
  50. package/es/transition/README.md +140 -0
  51. package/es/tree-select/README.md +348 -0
  52. package/lib/@types/config-provider/index.d.ts +7 -2
  53. package/lib/@types/config-provider/theme-vars.d.ts +1 -1
  54. package/lib/action-sheet/README.md +613 -0
  55. package/lib/battery/README.md +149 -0
  56. package/lib/bottom-sheet/README.md +495 -0
  57. package/lib/button/README.md +335 -0
  58. package/lib/calendar/README.md +513 -0
  59. package/lib/cascader/README.md +326 -0
  60. package/lib/cell/README.md +317 -0
  61. package/lib/checkbox/README.md +481 -0
  62. package/lib/circle/README.md +132 -0
  63. package/lib/col/README.md +162 -0
  64. package/lib/collapse/README.md +127 -0
  65. package/lib/config-provider/README.md +150 -0
  66. package/lib/count-down/README.md +201 -0
  67. package/lib/custom-keyboard/README.md +122 -0
  68. package/lib/datetime-picker/README.md +438 -0
  69. package/lib/dialog/README.md +451 -0
  70. package/lib/divider/README.md +132 -0
  71. package/lib/dropdown-menu/README.md +331 -0
  72. package/lib/empty/README.md +119 -0
  73. package/lib/field/README.md +455 -0
  74. package/lib/grid/README.md +273 -0
  75. package/lib/icon/README.md +178 -0
  76. package/lib/image/README.md +225 -0
  77. package/lib/index-bar/README.md +186 -0
  78. package/lib/loading/README.md +120 -0
  79. package/lib/nav-bar/README.md +410 -0
  80. package/lib/notice-bar/README.md +274 -0
  81. package/lib/notify/README.md +121 -0
  82. package/lib/overlay/README.md +128 -0
  83. package/lib/picker/README.md +412 -0
  84. package/lib/popover/README.md +338 -0
  85. package/lib/popup/README.md +272 -0
  86. package/lib/progress/README.md +88 -0
  87. package/lib/radio/README.md +423 -0
  88. package/lib/rate/README.md +248 -0
  89. package/lib/search/README.md +290 -0
  90. package/lib/sidebar/README.md +176 -0
  91. package/lib/skeleton/README.md +141 -0
  92. package/lib/slider/README.md +444 -0
  93. package/lib/stepper/README.md +231 -0
  94. package/lib/sticky/README.md +91 -0
  95. package/lib/swipe-cell/README.md +217 -0
  96. package/lib/switch/README.md +316 -0
  97. package/lib/tab/README.md +501 -0
  98. package/lib/tabbar/README.md +397 -0
  99. package/lib/tag/README.md +215 -0
  100. package/lib/toast/README.md +293 -0
  101. package/lib/transition/README.md +140 -0
  102. package/lib/tree-select/README.md +348 -0
  103. package/package.json +3 -3
@@ -0,0 +1,122 @@
1
+ ---
2
+ category: 数据录入
3
+ assets: CustomKeyboard
4
+ ---
5
+
6
+ # CustomKeyboard 数字键盘
7
+
8
+ ### 介绍
9
+
10
+ 自定义数字键盘
11
+
12
+ ### 引入
13
+
14
+ ```jsx
15
+ import { CustomKeyboard } from '@ray-js/smart-ui';
16
+ ```
17
+
18
+ ## 代码演示
19
+
20
+ ### 基础用法
21
+
22
+ ```jsx
23
+ import { CustomKeyboard } from '@ray-js/smart-ui';
24
+ import React from 'react';
25
+
26
+ export default function Demo() {
27
+ const onChange = (v) => {
28
+ console.log('onChange value =====>', v.detail);
29
+ }
30
+ const onConfirm = (v)=> {
31
+ console.log('onConfirm value ====>', v.detail);
32
+ }
33
+ return <CustomKeyboard onChange={onChange} onConfirm={onConfirm} />;
34
+ }
35
+ ```
36
+
37
+ ### 高级用法
38
+
39
+ 可以通过插槽添加定制内容。
40
+
41
+ ```jsx
42
+ import { CustomKeyboard } from '@ray-js/smart-ui';
43
+ import React from 'react';
44
+ import { View } from '@ray-js/ray'
45
+
46
+ export default function Demo() {
47
+ const onChange = (v) => {
48
+ console.log('onChange value =====>', v.detail);
49
+ }
50
+ const onConfirm = (v) => {
51
+ console.log('onConfirm value ====>', v.detail);
52
+ }
53
+ const handleBtn = () => {
54
+ console.log('click');
55
+ };
56
+ return (
57
+ <CustomKeyboard
58
+ inputContainerStyle="
59
+ marginLeft: 56rpx;
60
+ marginTop: 16rpx;
61
+ marginBottom: 56rpx;
62
+ width: 560rpx;
63
+ height: 120rpx;
64
+ "
65
+ placeholder="请输入"
66
+ confirmText="确认"
67
+ value="123"
68
+ confirmColor="#123321"
69
+ onChange={onChange}
70
+ onConfirm={onConfirm}
71
+ >
72
+ <View
73
+ slot="custom-button"
74
+ onClick={handleBtn}
75
+ style={{
76
+ border: "1px solid blue", borderRadius: "4px", marginRight: '4px'
77
+ }}
78
+ >
79
+ 点击
80
+ </View>
81
+ </CustomKeyboard>
82
+ );
83
+ }
84
+ ```
85
+
86
+ ## API
87
+
88
+ ### Props
89
+
90
+ | 参数 | 说明 | 类型 | 默认值 |
91
+ | --- | --- | --- | --- |
92
+ | confirmColor | 数字键盘的确认按钮背景色 | _string_ | - |
93
+ | confirmText | 确认按钮文案 | _string_ | Confirm |
94
+ | confirmTextStyle | 确认按钮的样式 | _React.CSSProperties_ | - |
95
+ | digitalBase | 用于适配进制功能(取值范围 1-10) | _number_ | 10 |
96
+ | inputContainerStyle | 输入框容器样式 | _React.CSSProperties_ | - |
97
+ | ismartHideZero | 是否隐藏零 | _boolean_ | false |
98
+ | placeholder | placeholder 文案 | _string_ | `please input` |
99
+ | value | 值 | _string_ | - |
100
+ | valueTextStyle | 当前值的样式(适用于 placeholder 样式) | _React.CSSProperties_ | - |
101
+
102
+ ### Slot
103
+
104
+ | 名称 | 说明 |
105
+ | ------------- | -------------- |
106
+ | customButton | 自定义右侧内容 |
107
+
108
+ ### 样式变量
109
+
110
+ 组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 [ConfigProvider 组件](/material/smartui?comId=config-provider)。
111
+
112
+ | 名称 | 默认值 | 描述 |
113
+ | ----------------------------- | -------------------------------------- | ---- |
114
+ | --custom-keyboard-bg-color | _var(--app-B6, #fff)_ | 背景颜色 |
115
+ | --custom-keyboard-text-color | _var(--app-B6-N2, rgba(0, 0, 0, 0.7))_ | 字体颜色 |
116
+ | --custom-keyboard-border-color | _var(--app-B6-N7, rgba(0, 0, 0, 0.1))_ | 边框颜色 |
117
+ | --custom-keyboard-placeholder-color | _var(--app-B6-N6, rgba(0, 0, 0, 0.2))_ | 占位符颜色 |
118
+ | --custom-keyboard-popup-bg-color | _var(--app-B6-N6, rgba(0, 0, 0, 0.2))_ | 弹窗背景色 |
119
+ | --custom-keyboard-popup-item-color | _var(--app-B6, #fff)_ | 弹窗项目颜色 |
120
+ | --custom-keyboard-popup-confirm-color | _var(--app-M3, #2dda86)_ | 确认按钮颜色 |
121
+ | --custom-keyboard-popup-text-color | _var(--app-B6-N2, rgba(0, 0, 0, 0.7))_ | 弹窗文字颜色 |
122
+ | --custom-keyboard-popup-hover-color | _var(--app-B6-N7, rgba(0, 0, 0, 0.1))_ | 鼠标悬停颜色 |
@@ -0,0 +1,438 @@
1
+ ---
2
+ category: 数据录入
3
+ assets: CountdownActionSheet,LampScheduleSetFunction
4
+ ---
5
+
6
+ # DateTimePicker 时间选择
7
+
8
+ ### 介绍
9
+
10
+ 用于选择时间,支持日期、时分等时间维度,通常与 [弹出层](/material/smartui?comId=popup) 组件配合使用。
11
+
12
+ ### 引入
13
+
14
+ ```jsx
15
+ import { DateTimePicker } from '@ray-js/smart-ui';
16
+ ```
17
+
18
+ ## 代码演示
19
+
20
+ ### 选择完整时间
21
+
22
+ `value` 为时间戳。
23
+
24
+ ```jsx
25
+ import React, { useCallback } from 'react';
26
+ import { DateTimePicker } from '@ray-js/smart-ui';
27
+ import { showToast } from '@ray-js/ray';
28
+
29
+ export default function Demo() {
30
+ const onDateTimeInput = useCallback(event => {
31
+ const { detail } = event;
32
+ showToast({
33
+ icon: 'none',
34
+ title: new Date(detail).toLocaleString(),
35
+ });
36
+ }, []);
37
+ return (
38
+ <DateTimePicker
39
+ type="datetime"
40
+ value={new Date(2018, 2, 31).getTime()}
41
+ minDate={new Date(2018, 0, 1).getTime()}
42
+ maxDate={new Date(2019, 10, 1).getTime()}
43
+ onInput={onDateTimeInput}
44
+ />
45
+ );
46
+ }
47
+ ```
48
+
49
+ ### 选择日期(年月日)
50
+
51
+ `value` 为时间戳;通过传入 `locale` 属性加入单位描述;通过传入 `formatterMap` `v2.2.0` 属性可以对内部的日期进行替换。
52
+
53
+ ```jsx
54
+ import React, { useCallback } from 'react';
55
+ import { DateTimePicker } from '@ray-js/smart-ui';
56
+ import { showToast } from '@ray-js/ray';
57
+
58
+ export default function Demo() {
59
+ const onDateInput = useCallback(event => {
60
+ const { detail } = event;
61
+ showToast({
62
+ icon: 'none',
63
+ title: new Date(detail).toLocaleString(),
64
+ });
65
+ }, []);
66
+ return (
67
+ <DateTimePicker
68
+ type="date"
69
+ value={new Date(2018, 2, 31).getTime()}
70
+ minDate={new Date(2018, 0, 1).getTime()}
71
+ maxDate={new Date(2019, 10, 1).getTime()}
72
+ locale={{
73
+ year: '年',
74
+ }}
75
+ formatterMap={{
76
+ month: {
77
+ '01': 'January',
78
+ '02': 'February',
79
+ '03': 'March',
80
+ '04': 'April',
81
+ '05': 'May',
82
+ '06': 'June',
83
+ '07': 'July',
84
+ '08': 'August',
85
+ '09': 'September',
86
+ '10': 'October',
87
+ '11': 'November',
88
+ '12': 'December',
89
+ },
90
+ day: '{{day}}天'
91
+ }}
92
+ fontStyles={{
93
+ day: {
94
+ fontFamily: 'Manrope',
95
+ },
96
+ }}
97
+ onInput={onDateInput}
98
+ />
99
+ );
100
+ }
101
+ ```
102
+
103
+ ### 选择日期(年月)
104
+
105
+ `value` 为时间戳。
106
+
107
+ ```jsx
108
+ import React, { useCallback } from 'react';
109
+ import { DateTimePicker } from '@ray-js/smart-ui';
110
+ import { showToast } from '@ray-js/ray';
111
+
112
+ export default function Demo() {
113
+ const onDateInput = useCallback(event => {
114
+ const { detail } = event;
115
+ const date = new Date(detail);
116
+ showToast({
117
+ icon: 'none',
118
+ title: `${date.getFullYear()}/${date.getMonth() + 1}`,
119
+ });
120
+ }, []);
121
+ return (
122
+ <DateTimePicker
123
+ type="year-month"
124
+ value={new Date(2018, 2, 31).getTime()}
125
+ minDate={new Date(2018, 0, 1).getTime()}
126
+ locale={{
127
+ year: '年',
128
+ month: '月',
129
+ day: '日',
130
+ }}
131
+ onInput={onDateInput}
132
+ />
133
+ );
134
+ }
135
+ ```
136
+
137
+ ### 选择时间
138
+
139
+ `value` 为字符串。
140
+
141
+ ```jsx
142
+ import React, { useCallback } from 'react';
143
+ import { DateTimePicker } from '@ray-js/smart-ui';
144
+ import { showToast } from '@ray-js/ray';
145
+
146
+ export default function Demo() {
147
+ const onTimeInput = useCallback(event => {
148
+ const { detail } = event;
149
+
150
+ showToast({
151
+ icon: 'none',
152
+ title: detail,
153
+ });
154
+ }, []);
155
+ return (
156
+ <DateTimePicker
157
+ type="time"
158
+ value="12:00"
159
+ minHour={10}
160
+ maxHour={20}
161
+ onInput={onTimeInput}
162
+ />
163
+ );
164
+ }
165
+ ```
166
+
167
+
168
+ ### 选择时间-12小时模式`v2.6.0`
169
+
170
+ 当设置`type: 'time'`时,可以开启`is12HourClock`属性实现12小时选择模式;`amText`、`pmText` 可以分别设置上午和下午的文案。
171
+ `columnsOrder`属性可以设置列的顺序,对应列的order越大,就会越靠后,同css的`flex order` 属性,只是从样式层面改变列的顺序,逻辑还是不变。
172
+ `fontStyles` 和 `columnStyles` 内的 `12HourClock` `v2.6.0` 可以修改对应12小时时区的样式。
173
+
174
+ ```jsx
175
+ import React, { useCallback, useState } from 'react';
176
+ import { DateTimePicker } from '@ray-js/smart-ui';
177
+ import { showToast } from '@ray-js/ray';
178
+
179
+ export default function Demo() {
180
+ const [currentDate, setCurrentDate] = useState('11:00');
181
+
182
+ const onTimeInput = useCallback(event => {
183
+ const { detail } = event;
184
+ setCurrentDate(detail)
185
+ showToast({
186
+ icon: 'none',
187
+ title: detail,
188
+ });
189
+ }, []);
190
+ return (
191
+ <DateTimePicker
192
+ type="time"
193
+ value={currentDate}
194
+ is12HourClock
195
+ columnsOrder={[2, 1, 1]}
196
+ fontStyles={{
197
+ '12HourClock': {
198
+ color: 'var(--app-B6-N1,#000)',
199
+ },
200
+ }}
201
+ onInput={onTimeInput}
202
+ />
203
+ );
204
+ }
205
+ ```
206
+
207
+ ### 关闭值改变动画 `v2.2.0`
208
+
209
+ `changeAnimation` 属性设置为`false`可以关闭因为`value`属性改变导致的组件更新动画效果。
210
+
211
+ ```jsx
212
+ import React, { useCallback, useState } from 'react';
213
+ import { DateTimePicker } from '@ray-js/smart-ui';
214
+ import { showToast } from '@ray-js/ray';
215
+
216
+ export default function Demo() {
217
+ const [currentDate, setCurrentDate] = useState('11:00');
218
+
219
+ const onTimeInput = useCallback(event => {
220
+ const { detail } = event;
221
+ setCurrentDate(detail)
222
+ showToast({
223
+ icon: 'none',
224
+ title: detail,
225
+ });
226
+ }, []);
227
+
228
+ return (
229
+ <DateTimePicker
230
+ type="time"
231
+ value={currentDate}
232
+ changeAnimation={false}
233
+ onInput={onTimeInput}
234
+ />
235
+ );
236
+ }
237
+ ```
238
+
239
+ ### 嵌套 Popup `v2.3.2`
240
+
241
+ 当是Popup嵌套时我们往往会有确定和取消事件,为了方式关闭弹框的时候动画没有执行完毕,需要使用 `onAnimationStart` 和 `onAnimationEnd` 事件对 `onConfirm` 的回调执行做一个禁用的效果,等到动画执行完毕在可以点击确认。
242
+ 其次为了解决用户点击取消后的恢复之前选中效果,可以设置 `show: false` 时 `value="-1:00"` 这样在次打开弹框时由于`value`不一样会触发组件重新定位到当前选中的时间。
243
+
244
+ ```jsx
245
+ import React, { useCallback, useState } from 'react';
246
+ import { DateTimePicker, Cell, Popup } from '@ray-js/smart-ui';
247
+ import { View } from '@ray-js/ray';
248
+
249
+ export default function Demo() {
250
+ const [show, setShow] = React.useState(false);
251
+ const [popDomShow, setPopDomShow] = useState(false);
252
+ const [disabled, setDisabled] = useState(false);
253
+ const [time, setTime] = useState({
254
+ hour: 10,
255
+ minute: 0,
256
+ });
257
+
258
+ const showPicker = () => {
259
+ setPopDomShow(true);
260
+ setShow(true);
261
+ }
262
+ const onSaveTiming = event => {
263
+ if (disabled) return;
264
+ const { detail } = event;
265
+ const [hour, minute] = detail.split(':');
266
+ setTime({
267
+ hour: parseInt(hour.trim(), 10),
268
+ minute: parseInt(minute.trim(), 10),
269
+ });
270
+ setShow(false);
271
+ }
272
+
273
+ const onAnimationStart = () => {
274
+ console.log('onAnimationStart');
275
+ setDisabled(true);
276
+ };
277
+
278
+ const onAnimationEnd = () => {
279
+ console.log('onAnimationEnd');
280
+ setDisabled(false);
281
+ };
282
+
283
+ return (
284
+ <>
285
+ <Cell title="选择时间" isLink onClick={showPicker}>
286
+ {time.hour}:{time.minute}
287
+ </Cell>
288
+ <Popup
289
+ round
290
+ show={show}
291
+ position="bottom"
292
+ safeAreaInsetBottom={false}
293
+ closeOnClickOverlay={false}
294
+ onAfterLeave={() => setPopDomShow(false)}
295
+ >
296
+ <View style={{ marginBottom: '60rpx' }}>
297
+ <DateTimePicker
298
+ type="time"
299
+ onAnimationStart={onAnimationStart}
300
+ onAnimationEnd={onAnimationEnd}
301
+ value={popDomShow ? `${time.hour}:${time.minute}` : '-1:00'}
302
+ onConfirm={onSaveTiming}
303
+ onCancel={() => setShow(false)}
304
+ />
305
+ </View>
306
+ </Popup>
307
+ </>
308
+ );
309
+ }
310
+ ```
311
+
312
+ ### 样式风格 `v2.3.7`
313
+
314
+ `activeStyle` 可以修改选中项的样式;`columnStyles` 可以设置每一列的样式;`fontStyles` 可以设置每一列文字的样式。
315
+
316
+ ```jsx
317
+ import React, { useCallback } from 'react';
318
+ import { DateTimePicker } from '@ray-js/smart-ui';
319
+ import { showToast } from '@ray-js/ray';
320
+
321
+ export default function Demo() {
322
+ const onDateTimeInput = useCallback(event => {
323
+ const { detail } = event;
324
+ showToast({
325
+ icon: 'none',
326
+ title: new Date(detail).toLocaleString(),
327
+ });
328
+ }, []);
329
+ return (
330
+ <DateTimePicker
331
+ showToolbar={false}
332
+ type="datetime"
333
+ value={new Date(2018, 2, 31).getTime()}
334
+ columnStyles={{
335
+ year: {
336
+ background: 'rgba(0, 0, 0, 0.1)',
337
+ },
338
+ }}
339
+ fontStyles={{
340
+ month: {
341
+ color: 'rgb(23, 138, 237)',
342
+ },
343
+ }}
344
+ activeStyle={{
345
+ color: 'rgb(235, 87, 41)',
346
+ }}
347
+ onInput={onDateTimeInput}
348
+ />
349
+ );
350
+ }
351
+ ```
352
+
353
+ ## API
354
+
355
+ ### Props
356
+
357
+ | 参数 | 说明 | 类型 | 默认值 |
358
+ | ------------------- | ------------------------------------------------------------------------------ | -------------------------- | ---------- |
359
+ | cancelButtonText | 取消按钮文字 | _string_ | `取消` |
360
+ | confirmButtonText | 确认按钮文字 | _string_ | `确认` |
361
+ | itemHeight | 选项高度 | _number_ | `44` |
362
+ | loading | 是否显示加载状态 | _boolean_ | `false` |
363
+ | locale | 设置时间单位 | Locale | |
364
+ | maxDate | 可选的最大时间,精确到分钟 | _number_ | 十年后 |
365
+ | maxHour | 可选的最大小时,针对 time 类型 | _number_ | `23` |
366
+ | maxMinute | 可选的最大分钟,针对 time 类型 | _number_ | `59` |
367
+ | minDate | 可选的最小时间,精确到分钟 | _number_ | 十年前 |
368
+ | minHour | 可选的最小小时,针对 time 类型 | _number_ | `0` |
369
+ | minMinute | 可选的最小分钟,针对 time 类型 | _number_ | `0` |
370
+ | showToolbar | 是否显示顶部栏 | _boolean_ | `true` |
371
+ | title | 顶部栏标题 | _string_ | `''` |
372
+ | type | 类型,可选值为 `date` `time` `year-month` <br> <strong>不建议动态修改</strong> | _string_ | `datetime` |
373
+ | value | 当前选中值 | _string \| number \| Date_ | - |
374
+ | visibleItemCount | 可见的选项个数 | _number_ | `6` |
375
+ | formatterMap `v2.2.0` | 字符串替换(`type` 可选值为 `year`, `month`, `day`, `hour`, `minute`) | _Record<type, string \| Record<string, string>>_ | - |
376
+ | changeAnimation `v2.2.0` | 组件受数据驱动选择值改变时是否需要动画过度效果(不包含手指交互滚动的动画) | _boolean_ | `false` |
377
+ | is12HourClock `v2.6.0` | 当设置 `type: 'time'` 时,此属性可开启12小时选择模式 | _boolean_ | `false` |
378
+ | amText `v2.2.0` | 12小时选择模式时上午的文案 | _string_ | `AM` |
379
+ | pmText `v2.2.0` | 12小时选择模式时下午的文案 | _string_ | `PM` |
380
+ | columnsOrder `v2.2.0` | 设置列的顺序,同`flex order`属性,只是从样式角度修改列的顺序,逻辑还是不变 | _string[]_ | `[]` |
381
+ | animationTime `v2.3.7` | 过渡动画以及选择回调延迟的时间(单位ms) | _number_ | `800` `v2.3.7` `300` `v2.6.0` |
382
+ | columnStyles `v2.3.7` | 任意列的样式 | _Record\<string, string>_ | - |
383
+ | fontStyles `v2.3.7` | 任意列的字体样式 | _Record\<string, string>_ | - |
384
+ | activeStyle `v2.3.7` | 选中项的样式 | _React.CSSProperties_ | - |
385
+
386
+ ### Events
387
+
388
+ | 事件名称 | 说明 | 回调参数 |
389
+ | ------------ | ------------------------ | ---------- |
390
+ | onCancel | 点击取消按钮时触发的事件 | - |
391
+ | onChange | 当值变化时触发的事件 | 组件实例 |
392
+ | onConfirm | 点击完成按钮时触发的事件 | 当前 value |
393
+ | onInput | 当值变化时触发的事件 | 当前 value |
394
+ | onAnimationStart `v2.3.2` | 组件内部动画开始 | - |
395
+ | onAnimationEnd `v2.3.2` | 组件内部动画结束 | - |
396
+
397
+ ### change 事件
398
+
399
+ 在`change`事件中,可以获取到组件实例,对组件进行相应的更新等操作:
400
+
401
+ | 函数 | 说明 |
402
+ | ------------------------------ | ------------------------------------------ |
403
+ | getColumnValue(index) | 获取对应列中选中的值 |
404
+ | getColumnValues(index) | 获取对应列中所有的备选值 |
405
+ | getValues() | 获取所有列中被选中的值,返回一个数组 |
406
+ | setColumnValue(index, value) | 设置对应列中选中的值 |
407
+ | setColumnValues(index, values) | 设置对应列中所有的备选值 |
408
+ | setValues(values) | `values`为一个数组,设置所有列中被选中的值 |
409
+
410
+ ### 外部样式类
411
+
412
+ | 类名 | 说明 |
413
+ | ------------- | ------------ |
414
+ | activeClass | 选中项样式类 |
415
+ | columnClass | 列样式类 |
416
+ | toolbarClass | 顶部栏样式类 |
417
+
418
+ ### Locale 结构
419
+
420
+ | 属性 | 说明 |
421
+ | ------ | -------- |
422
+ | day | 日单位 |
423
+ | hour | 小时单位 |
424
+ | minute | 分钟单位 |
425
+ | month | 月单位 |
426
+ | second | 秒单位 |
427
+ | year | 年单位 |
428
+
429
+
430
+ ### 样式变量
431
+
432
+ 其他CSS变量请参考 picker 组件文档说明 - 样式变量
433
+
434
+ 组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 [ConfigProvider 组件](/material/smartui?comId=config-provider)。
435
+
436
+ | 名称 | 默认值 | 描述 |
437
+ | ----------------------------- | -------------------------------------- | ---- |
438
+ | --hairline-border-image-color `v2.6.0` | _var(--smart-ui-border-image, linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)))_ | 分割线的 border-image 样式 |