html输入在生产后未在电子应用程序中接收条形码扫描数据

Posted

技术标签:

【中文标题】html输入在生产后未在电子应用程序中接收条形码扫描数据【英文标题】:html input not receiving barcode scanned data in electron app after production 【发布时间】:2022-01-16 04:49:06 【问题描述】:

我遇到了条形码扫描数据的问题。我正在创建一个应用程序,我需要将 条码扫描数据放入 HTML 输入元素。该应用在开发中工作html 输入接收来自条形码的数据但在生产中,HTML 输入不接收数据。

注意:我正在使用barcode to pc app 进行测试。

代码如下:

HTML

<input  name="barcode-data" class="barcode-data-input">

JS

const barcodeInput = document.querySelector('.barcode-data-input');
  
  barcodeInput.focus();
  let keyBreakTimer = null;

  const notAllowedChars = [27, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 44, 19, 145, 45, 36, 33, 34, 35, 46, 144, 91, 16, 9, 20, 17, 18, 93, 8, 37, 39, 38, 40];

  //maximum allowed duration between input change or keypress.
  const keyWaitDuration = 500;

  barcodeInput.addEventListener('keyup', (e) => 
    if(e.keyCode === 13)
      e.preventDefault();
    
    if (notAllowedChars.indexOf(e.keyCode) > 0) 
      console.log('not allowed');
      return;
    
    clearTimeout(keyBreakTimer);

    keyBreakTimer = setTimeout(generateQRCode, keyWaitDuration);

  );


  barcodeInput.addEventListener('keydown', (e) => 
    if(e.keyCode === 13)
      e.preventDefault();
    

    //check if user pressed any functional key
    if (notAllowedChars.indexOf(e.keyCode) > 0) 
      console.log('not allowed');
      return;
    
    clearTimeout(keyBreakTimer);
  );

【问题讨论】:

条形码扫描仪充当键盘,所以代码没问题(扫描仪没有什么不同),您应该检查生产中的问题(可能是缓存或未上传资产),检查控制台并分享如果有一些有用的错误日志。 这是一个电子应用程序。我在生产中多次检查了控制台,但很清楚。电子应用程序未检测到生产中的条形码扫描仪。 我还用我之前开发的另一个电子应用程序检查了条形码阅读器,但同样的问题。 正如@John 所说,就大多数应用程序而言,条形码阅读器只是键盘。当您使用常规键盘输入条形码时,您的电子应用程序是否正常工作?条形码阅读器是否适用于非电子应用程序? 是的,当我使用普通键盘时,它也可以使用由电子制成的 vscode。它也适用于记事本等非电子应用程序。 【参考方案1】:

没有解决上述问题的方法是一场噩梦。但问题不在于电子本身。 “Barcode to PC”应用程序有问题,只需以管理员身份运行“Barcode to PC”即可解决问题。

【讨论】:

以上是关于html输入在生产后未在电子应用程序中接收条形码扫描数据的主要内容,如果未能解决你的问题,请参考以下文章

条形码扫描出来没有括号 是怎么弄的啊

HTML 组件未在电子反应应用程序中呈现

码上放心的二维码可以手动输入扫码枪吗

Django 联系电子邮件表单未在模板 home.html 中呈现/显示

如果在取快递的时候只扫快递上的条形码不扫身份条形码会不会有事?

关于条形码识别,Java实现