html 生产后在电子应用程序中输入未收到条码扫描数据
html input not receiving barcode scanned data in electron app after production
我遇到了 条形码 扫描数据的问题。我正在创建一个应用程序,我需要将 条形码扫描数据放入 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);
});
无法解决上述问题真是一场噩梦。但问题不在于电子本身。
应用程序“条码到 PC”是一个问题,仅 运行 作为管理员的“条码到 PC”就解决了这个问题。
我遇到了 条形码 扫描数据的问题。我正在创建一个应用程序,我需要将 条形码扫描数据放入 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);
});
无法解决上述问题真是一场噩梦。但问题不在于电子本身。 应用程序“条码到 PC”是一个问题,仅 运行 作为管理员的“条码到 PC”就解决了这个问题。