微信鸿蒙版 8.0.14 查询 navigator.maxTouchPoints 为 0 导致的 bug
最近有鸿蒙客户反馈在微信中使用系统无法操作。
该系统开发时间较早,用的也是当时的前端组件(iCheck)
该组件通过 ua 和 maxtouchpoints 来判断当前平台是否为移动平台,然后可能有些不同的逻辑
在微信鸿蒙版中,因为 ua 不在苹果安卓之列,然后最大触摸点数返回的是 0,导致组件判断错误,进一步导致组件行为 bug,无法选中。
目前只能是先修改下组件对移动端的判断逻辑,增加 openharmony 字符串的判断。
_mobile = /ip(hone|od|ad)|android|blackberry|windows phone|openharmony|opera mini|silk/i.test(navigator.userAgent) || (navigator.maxTouchPoints && navigator.maxTouchPoints >= 1);
iCheck v1.0.4
目前测试鸿蒙系统中,自带浏览器、QQ、企业微信均正常无此 bug。
另外记录一个手机端排查问题用的开发者工具:https://github.com/liriliri/eruda
输了你,赢了世界又如何...

浙公网安备 33010602011771号