首页 » 一些 error » 记一次解决前端兼容性bug 的过程

记一次解决前端兼容性bug 的过程

去年十月某一天,突然有客户提 bug,表单字段设置了必填,结果收集上来的结果还有为空的。

然后就开始进行排查,先是用测试环境去复现,没复现出来,然后去数据库看请求日志,发现在提交时,字段就是空值,要么没填,要么没把值带过来。

一开始以为是某个字段没有必填提示,让用户选一下那个字段,但出问题的用户还是不行,然后又开始找问题,看日志,然后发现,UA只有 ios13 的时候才会有空值,但看了所有 ios13 的请求,并不是所有的都有问题。然后看 UA,到底是什么问题,最终发现是ios13 下,最新的微信版本有问题,而且是微信最近刚刚发的版。

因为没有 ios13 的环境,模拟器没法装微信,暂时就撂下了,让用户用浏览器打开填写,就可以了。

过了几个月,在今年年初,又有客户来反馈这个问题,正好又到我手里了,这都反馈两次了,不解决不行了,于是开始想办法构造一个 ios13 的环境。

用自己的 mac 安装模拟器时,因 mac os 版本过高,最低只能装 ios15,装完后复现不了 bug,各种找教程安装 13,都不行,然后想到一个办法,找来行政,让她把公司旧电脑都找出来,挨个试,终于找到一台低版本 mac os 的电脑,但是特别卡,充电接口还有问题,不能碰,一碰就断电,然后就关机了。

小心翼翼安装 ios13 环境,因为不能用微信,抱着试一试的态度,看下浏览器打开有没有问题,就开始复现,最终还真给复现了。

能复现,能调试,问题就好说了。

控制台报了一个错,错误截图找不到了,然后开始搜问题怎么解决,问前端朋友,问chatGPT,最后把问题解决了,是因为一个语法在那个环境下不支持,以下是截图:

这个也是因为做其他功能添加的代码。

前端真坑啊,一不注意就有个兼容问题。

不过不是专业前端,也想不到这里会有问题。

甚至怀疑,专业前端能不能提前想到这个问题。

原文链接:记一次解决前端兼容性bug 的过程,转载请注明来源!

0