码迷,mamicode.com
首页 > 其他好文 > 详细

cordova 扫码报错:scan is already in progress

时间:2020-06-02 19:22:19      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:图片   不同的   col   mic   outline   方法   div   height   type   

  公司APP使用cordova框架进行开发,在一些功能升级后, 扫码突然报错:scan is already in progress。

技术图片

 

 

   项目之前使用没有发现这个问题,百度了一翻发现这类问题较少,仔细想了想不应该是cordova本身的问题。应该是本次系统升级造成的,极有可能是同时调用多次才会有这样的提示。页面元素是JS动态生成,重点:页面上的“扫描条码”按钮,是采用$this.delegate(‘.lr-btn-outlined‘, ‘tap‘这类动态绑定方法,将点击事件动态绑定上去的。

  研究一翻终于找到了症结所在,原来是动态生成这个button的时候给了一个固定的ID,造成点击一次可能会有多个按钮响应,所以在这里每次动态生成button的的时候给一个不同的ID,问题就解决了。

  如下:ID命名使用_item.field + _index,即可生成不同的ID。

  问题完美解决!

case scanbutton:
                    _compontHtml = <div class="lr-edit-grid-row" ><label> + _item.name + </label><button type="button" class="lr-btn-outlined lr-btn-success"  id=" + _item.field + _index + ">扫描 + _item.name + </button ></div>;
                    $html.append(_compontHtml);

 

cordova 扫码报错:scan is already in progress

标签:图片   不同的   col   mic   outline   方法   div   height   type   

原文地址:https://www.cnblogs.com/gougou1981/p/13032819.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!