以下のコードに示すように、QuaggaJS ライブラリを Laravel アプリケーションに実装しました。これは、デスクトップ上の Chrome、モバイル デバイス上の Samsungs エクスプローラーおよび Safari で機能しますが、Android 上の Chrome では、カメラがバーコードを検出した瞬間に chrome アプリ全体がクラッシュします。
import Quagga from 'quagga';
var _scannerIsRunning = false;
document.getElementById("start").addEventListener("click", function () {
if (_scannerIsRunning) {
Quagga.stop();
_scannerIsRunning = false;
} else {
location.reload();
}
})
$(document).ready(function () {
Quagga.init({
inputStream: {
name: "Live",
type: "LiveStream",
target: document.querySelector('.cam') // Or '#yourElement' (optional)
},
decoder: {
readers: ["code_128_reader"]
},
constraints: {
width: 640,
height: 480,
video: {
mandatory: {
minWidth: { min: 1280 },
minHeight: { min: 720 }
}
}
},
showCanvas: false,
locator: false,
}, function (err) {
if (err) {
console.log(err);
return
}
console.log("Initialization finished. Ready to start");
Quagga.start();
Quagga.onDetected(function (result) {
$('#table_data').prepend(
'<th>' + result.codeResult.code + '</th>'
)
console.log(result.codeResult.code);
Quagga.stop();
});
}, false);
})
前もって感謝します