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 回复

你提供一下你组件上的属性和属性值

更多关于ios18用uni-app日期选择组件更换年月无响应的实战教程也可以访问 https://www.itying.com/category-93-b0.html


<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组件的一个兼容性问题。以下是具体分析:

  1. 问题定位:
  • 仅iOS18设备出现
  • 点击确定/取消或空白处时无响应
  • @change事件未触发
  • 其他平台正常
  1. 可能原因:
  • iOS18对Web组件的事件处理机制有调整
  • picker组件的关闭事件未正确冒泡
  • 组件生命周期在iOS18下出现异常
  1. 临时解决方案: (1) 降级测试: 尝试在iOS17设备验证是否正常

(2) 修改组件源码: 在calendar.vue中,对picker的@change事件添加try-catch包裹,避免事件中断

(3) 使用条件编译:

// #ifdef APP-IOS
// iOS特殊处理
// #endif
回到顶部