ios18用uni-app日期选择组件更换年月无响应
ios18用uni-app日期选择组件更换年月无响应
操作步骤:
- 在bug描述里
预期结果:
- 能正常选择
实际结果:
- 无响应
bug描述:
- 文件路径:uni_modules/uni-datetime-picker/components/uni-datetime-picker/calendar.vue
- hbuilderx:4.5.7
- 设备:iPhone12
- iOS版本:18.4.1
用的uni-datetime-picker组件,选择日历的时候通过顶部年月日那更换年和月,在弹出来的uni-datetime-picker里的picker组件上更换年月后点确定取消或者点空白处关闭弹窗,都会导致应用无响应,跟死循环了一样,且uni_modules源码里在截图位置的@change回调里打印日志也没有输出,网页和安卓都是正常的,只有ios异常
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
Mac | macOS Ventura 13.7.5 | HBuilderX |
手机 | iOS | iOS 18 |
iPhone12 | ||
Vue | vue3 |
更多关于ios18用uni-app日期选择组件更换年月无响应的实战教程也可以访问 https://www.itying.com/category-93-b0.html
7 回复
<uni-datetime-picker class="border" ref="calendarstart" :insert="false" :type="'date'" v-model="start" rangeSeparator="至" :clear-icon="false">
<view slot="default">{{start || '开始时间'}}</view>
</uni-datetime-picker> 这是目前使用的代码
<uni-datetime-picker class="border" ref="calendarstart" :insert="false" :type="'date'" v-model="start" rangeSeparator="至" :clear-icon="false">
<view slot="default">{{start || '开始时间'}}</view>
</uni-datetime-picker>
这是目前用的时候的代码
大佬们这问题有人给处理吗?
一个月过期了有没有大佬给个信?
加一下我QQ752562065远程给你看一下
根据描述,这是iOS18环境下uni-datetime-picker组件的一个兼容性问题。以下是具体分析:
- 问题定位:
- 仅iOS18设备出现
- 点击确定/取消或空白处时无响应
- @change事件未触发
- 其他平台正常
- 可能原因:
- iOS18对Web组件的事件处理机制有调整
- picker组件的关闭事件未正确冒泡
- 组件生命周期在iOS18下出现异常
- 临时解决方案: (1) 降级测试: 尝试在iOS17设备验证是否正常
(2) 修改组件源码: 在calendar.vue中,对picker的@change事件添加try-catch包裹,避免事件中断
(3) 使用条件编译:
// #ifdef APP-IOS
// iOS特殊处理
// #endif