[踩坑] ios版的webview无法长按识别二维码

现象

最近开始用vue了,做了一个微信内嵌的h5页面,某个页面存在一个二维码,在安卓手机上可以长按识别二维码,但是ios不行。

如下图所示:
安卓没有任何问题:

安卓没问题

ios长按就不行了:

ios不行

(出于隐私,马赛克了中间的二维码,见谅见谅)

环境

框架: vue

操作系统: ios

解决办法

后来到处找解决方案,google,,排查了N多原因,什么64px的Bug,什么二维码过大过小等等等等。联系微信开发者中心,问题算是反馈上去了,让我把图片和代码片段上传上去,也上传了,但是就没下文了。(真心不想吐槽了)。那就自己一个个排查问题吧,新建vue项目,一个个地方改,终于发现了

最后!终于发现是vue-router的原因。为了好看采用的是history的模式!结果发现这会导致出现这个Bug。因此将vue-router的mode:history去掉就好了(默认使用的是hash模式的router)

(ps: 小声BB, 坑爹的微信,说来说去不是vue-router的锅,而是微信自己的锅, 至于具体的原因,因为拿不到微信那边的代码,自然就不知道了。。只知道这样可以解决问题,哎。难受)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值