在苹果15pro上选择picker-view后@change返回的值还是上一次选择的 uni-app
在苹果15pro上选择picker-view后@change返回的值还是上一次选择的 uni-app
操作步骤:
- 直接选择日期,多选择几次
预期结果:
- 每次正常
实际结果:
- @change返回值有异常
bug描述:
信息类别 | 信息内容 |
---|---|
产品分类 | uniapp/App |
PC开发环境 | Windows |
PC操作系统版本 | win10 |
HBuilderX类型 | 正式 |
HBuilderX版本 | 3.8.12 |
手机系统 | iOS |
手机系统版本 | iOS 16 |
手机厂商 | 苹果 |
手机机型 | 苹果15pro |
页面类型 | vue |
vue版本 | vue3 |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
更多关于在苹果15pro上选择picker-view后@change返回的值还是上一次选择的 uni-app的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于在苹果15pro上选择picker-view后@change返回的值还是上一次选择的 uni-app的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这是一个iOS平台上picker-view组件的已知问题,主要出现在快速连续选择时。建议尝试以下解决方案:
- 使用
@change
事件时,确保使用最新的value值:
function handleChange(e) {
const currentValue = e.detail.value
// 使用currentValue而不是依赖组件内部状态
}
- 可以尝试添加
@pickstart
和@pickend
事件监听器来辅助处理:
<picker-view
@change="handleChange"
@pickstart="handlePickStart"
@pickend="handlePickEnd">
</picker-view>
- 如果问题仍然存在,可以尝试强制更新picker-view的值:
function handleChange(e) {
this.pickerValue = e.detail.value
this.$forceUpdate()
}