Skip to content

Commit 3428ae1

Browse files
feat: ✨ Pickerview选择器新增immediate-change属性,目前微信和支付宝小程序支持。
1 parent 61004d3 commit 3428ae1

File tree

20 files changed

+57
-10
lines changed

20 files changed

+57
-10
lines changed

docs/component/calendar-view.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,7 @@ function handleChange({ value }) {
236236
| panel-height | 可滚动面板的高度 | number | - | 378 | - |
237237
| time-filter | type 为 'datetime' 或 'datetimerange' 时有效,用于过滤时间选择器的数据 | function | - | - | - |
238238
| hide-second | type 为 'datetime' 或 'datetimerange' 时有效,是否不展示秒修改 | boolean | - | false | - |
239+
| immediate-change | type 为 'datetime' 或 'datetimerange' 时有,是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。 | boolean | - | false | $LOWEST_VERSION$ |
239240

240241
## Events
241242

docs/component/calendar.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,6 +398,8 @@ function handleConfirm4({ value }) {
398398
| safe-area-inset-bottom | 弹出面板是否设置底部安全距离(iphone X 类型的机型) | boolean | - | true | - |
399399
| prop | 表单域 `model` 字段名,在使用表单校验功能的情况下,该属性是必填的 | string | - | - | - |
400400
| rules | 表单验证规则,结合`wd-form`组件使用 | `FormItemRule []` | - | `[]` | - |
401+
| immediate-change | type 为 'datetime' 或 'datetimerange' 时有,是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。 | boolean | - | false | $LOWEST_VERSION$ |
402+
401403

402404
### FormItemRule 数据结构
403405

docs/component/datetime-picker-view.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ const filter = (type, values) => {
133133
| maxHour | 最大小时,time类型时生效 | number | - | 23 | - |
134134
| minMinute | 最小分钟,time类型时生效 | number | - | 0 | - |
135135
| maxMinute | 最大分钟,time类型时生效 | number | - | 59 | - |
136+
| immediate-change | 是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。 | boolean | - | false | $LOWEST_VERSION$ |
136137
## Events
137138

138139
| 事件名称 | 说明 | 参数 | 最低版本 |

docs/component/datetime-picker.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@ const displayFormatTabLabel = (items) => {
296296
| ellipsis | 是否超出隐藏 | boolean | - | false | - |
297297
| prop | 表单域 `model` 字段名,在使用表单校验功能的情况下,该属性是必填的 | string | - | - | - |
298298
| rules | 表单验证规则,结合`wd-form`组件使用 | `FormItemRule []` | - | `[]` | - |
299+
| immediate-change | 是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。 | boolean | - | false | $LOWEST_VERSION$ |
299300

300301
### FormItemRule 数据结构
301302

docs/component/picker-view.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@ const onChangeDistrict = (pickerView, value, columnIndex, resolve) => {
114114
| value-key | 选项对象中,value对应的 key | string | - | value | - |
115115
| label-key | 选项对象中,展示的文本对应的 key | string | - | label | - |
116116
| column-change | 接收 pickerView 实例、选中项、当前修改列的下标、resolve 作为入参,根据选中项和列下标进行判断,通过 pickerView 实例暴露出来的 `setColumnData` 方法修改其他列的数据源。 | function | - | - | - |
117+
| immediate-change | 是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。 | boolean | - | false | $LOWEST_VERSION$ |
118+
119+
120+
117121

118122
## Methods
119123

docs/component/picker.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,7 @@ function handleConfirm({ value }) {
262262
| ellipsis | 是否超出隐藏 | boolean | - | false | - |
263263
| prop | 表单域 `model` 字段名,在使用表单校验功能的情况下,该属性是必填的 | string | - | - | - |
264264
| rules | 表单验证规则,结合`wd-form`组件使用 | `FormItemRule []` | - | `[]` | - |
265+
| immediate-change | 是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。 | boolean | - | false | $LOWEST_VERSION$ |
265266

266267
### FormItemRule 数据结构
267268

src/pages/pickerView/Index.vue

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@
55
</demo-block>
66

77
<demo-block :title="`禁用选项,数值: ${value2}`">
8-
<wd-picker-view v-model="value2" :immediate-change="true" :columns="columns2" @change="(e) => onChange(2, e)" />
8+
<wd-picker-view v-model="value2" :columns="columns2" @change="(e) => onChange(2, e)" />
9+
</demo-block>
10+
11+
<demo-block :title="`立即触发 change,数值: ${value6}`">
12+
<wd-picker-view v-model="value6" :immediate-change="true" :columns="columns2" @change="(e) => onChange(2, e)" />
913
</demo-block>
1014

1115
<demo-block :title="`加载中,数值: ${value3}`">
@@ -70,6 +74,8 @@ const value1 = ref<string>('选项1')
7074
const columns1 = ref(['选项1', '选项2', '选项3', '选项4', '选项5', '选项6', '选项7'])
7175
7276
const value2 = ref<string>('选项1')
77+
const value6 = ref<string>('选项1')
78+
7379
const columns2 = ref([
7480
{ label: '选项1' },
7581
{ label: '选项2' },

src/uni_modules/wot-design-uni/components/wd-calendar-view/monthPanel/month-panel.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
v-model="timeValue"
4141
:columns="timeData"
4242
:columns-height="125"
43+
:immediate-change="immediateChange"
4344
@change="handleTimeChange"
4445
@pickstart="handlePickStart"
4546
@pickend="handlePickEnd"

src/uni_modules/wot-design-uni/components/wd-calendar-view/monthPanel/types.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ export const monthPanelProps = {
2727
panelHeight: makeRequiredProp(Number),
2828
// type 为 'datetime' 或 'datetimerange' 时有效,用于过滤时间选择器的数据
2929
timeFilter: Function as PropType<CalendarTimeFilter>,
30-
hideSecond: makeBooleanProp(false)
30+
hideSecond: makeBooleanProp(false),
31+
/**
32+
* 是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。
33+
*/
34+
immediateChange: makeBooleanProp(false)
3135
}
3236

3337
export type MonthPanelProps = ExtractPropTypes<typeof monthPanelProps>

src/uni_modules/wot-design-uni/components/wd-calendar-view/types.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,11 @@ export const calendarViewProps = {
6161
/**
6262
* type 为 'datetime' 或 'datetimerange' 时有效,是否不展示秒修改
6363
*/
64-
hideSecond: makeBooleanProp(false)
64+
hideSecond: makeBooleanProp(false),
65+
/**
66+
* 是否在手指松开时立即触发picker-view的 change 事件。若不开启则会在滚动动画结束后触发 change 事件,1.2.25版本起提供,仅微信小程序和支付宝小程序支持。
67+
*/
68+
immediateChange: makeBooleanProp(false)
6569
}
6670

6771
export type CalendarViewProps = ExtractPropTypes<typeof calendarViewProps>

0 commit comments

Comments
 (0)