alsey / wxbarcode

微信小程序条码、二维码生成模块

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

条形码和二维码偶尔不显示, 大概十几次就会出现一次

meisiwan opened this issue · comments

我在华为手机v9机型上也显示不出来 退出重新打开又显示了 这个情况谁遇到过 求解决方法

二维码可以用替代方案 但是条形码换来换去都有这个问题

我在社区看到华为有些机型有这些问题 不能完全确定 退出重新打开能显示说明应该是能显示的 好纠结

其实不只华为机型 就算你在开发工具疯狂刷新 也会复现的

我也遇到了 第一次加载的时候没问题 再次调用的话 条形码和二维码显示不出

调用插件生成的部分用setTimeout包一下可以解决华为不显示的问题

我感觉最主要的问题还是,HUAWEI手机下微信canvas的绘图时机问题

条形码的code参数大多是请求获得的,而canvas,已经在页面上了,此时已经开始绘制了,然后绘制失败,显示空白。
感觉HUAWEI手机下微信小程序setDate()的数据和页面标签重绘机制,有点问题,我们可以想象一下。

正确的情况:

在首次进行了渲染,但是数据又更改了,再次渲染。

而华为手机下:

首次渲染了,没出来,数据改变,没有渲染,空白。

我用静态的code直接在``中直接写数据还是会出现问题。

最终解决:

  1. 为canvas加wx:if,准备数据都完成才渲染。
  2. 手动再次渲染,即执行两次wxbarcode.barcode()
  3. 设置定时器延迟加载。

我是三个都用了,然后现在经过我测试没有问题了,(单个使用还是不稳定,心累)[哭笑]
以上个人愚见