用二维码枪扫描二维码业务需求是将数据生成二维码,用扫码枪扫描数据上传到服务器。先写代码,再完善注意点this.start=newDate().getTime()letcode=''letlastTime,nextTimeletlastCode,nextCodeletthat=thiswindow.document.onkeypress=function(e){if(window.event){//IEnextCode=e.keyCode}elseif(e.which){//Netscape/Firefox/OperanextCode=e.which}console.time()console.log('nextCode',nextCode)if(e.which===13){if(code.length<3)return//手动输入的时候不会让code的长度大于2,所以这里只有console.log(code)console.log('扫码结束')console.timeEnd()that.parseQRCode(code)//获取扫码器输入的内容,做其他操作code=''lastCode=''lastTime=''return}nextTime=newDate().getTime()if(!lastTime&&!lastCode){console.log('扫码开始...')code+=e.key}if(lastCode&&lastTime&&nextTime-lastTime>500){//扫码前有按键事件时,防止第一个词丢失console.log('防止丢失第一个字...')code=e.key}elseif(lastCode&&lastTime){console.log('扫描代码...')code+=e.key}lastCode=nextCodelastTime=nextTime}
