[youzan/vant-weapp][Bug Report] 表单组件输入速度快会持续不断的回退,尤其是纯英文键盘或调起数字键盘进行输入的时候

2024-05-20 270 views
6
设备

IOS 12(iPhone 7)

VantWeapp 版本

1.0.0-beta.2

基础库版本

2.8.3

如果是 UI 问题,截图链接(多图回车分隔)

截图

请提供核心代码片段链接

https://github.com/youzan/vant-weapp/blob/dev/packages/field/index.ts#L82-L88

描述问题

连续不断的setData导致出现性能问题,出现输入框闪动、回退,输入内容错乱的情况

回答

4

onInput(event) { clearTimeout(this.timer) var self = this; self.timer = setTimeout(function () { const { value = '' } = event.detail || {}; self.setData({ value }, () => { self.emitChange(value); }); },50); }

输入事件中增加一个定时器,可以解决这个问题

3

@charescape 我也遇到了这个问题,请问你怎么解决的

1

@guangbi 我也遇到这个问题,按照你的方法测试了,无效

8

@basstk 自己用input写一个吧,只能先这样了

2

van-search使用过程中也发现了这个问题,真机上英文键盘疯狂输入必现,开发工具中不会,初步判断是field的oninput事件中setData异步导致的,望修复

2

相同的问题,debug中发现

Invoke event onInput in component: miniprogram_npm/@vant/weapp/field/index image