uni-app 字节跳动小程序 picker-view组件滑动事件不滑动也会执行
uni-app 字节跳动小程序 picker-view组件滑动事件不滑动也会执行
| 类别 | 信息 |
|---|---|
| 产品分类 | uniapp/小程序/抖音 |
| PC开发环境 | Windows |
| 操作系统版本 | win10 |
| HBuilderX类型 | 正式 |
| HBuilderX版本 | 3.1.18 |
| 第三方工具版本 | v3.0.9 |
| 基础库版本 | 1.99.3.2 |
| 项目创建方式 | HBuilderX |
操作步骤:
使用picker-view组件,选择省市区,默认选择第一个,如有编辑会选择已编辑省市区,结果进入页面,会自动执行change滑动事件,导致报错
预期结果:
展示选中省市区
实际结果:
报错
bug描述:
字节跳动小程序:picker-view组件的滑动事件,不滑动也会执行(注:一进入页面change事件就会执行)
更多关于uni-app 字节跳动小程序 picker-view组件滑动事件不滑动也会执行的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于uni-app 字节跳动小程序 picker-view组件滑动事件不滑动也会执行的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这是一个已知的字节跳动小程序平台特性问题。picker-view组件在初始化时会自动触发一次change事件,这与其在小程序端的实现机制有关。
解决方案:
- 使用标志位控制
data() {
return {
isFirstChange: true
}
},
methods: {
handleChange(e) {
if(this.isFirstChange) {
this.isFirstChange = false
return
}
// 正常的change处理逻辑
}
}
-
延迟绑定事件 在onReady生命周期中再绑定change事件监听,避免初始化的触发。
-
数据校验 在change事件处理函数中加入数据有效性检查:
handleChange(e) {
if(!e.detail.value || e.detail.value.length === 0) {
return
}
// 正常处理逻辑
}

