我正在使用cordova条形码扫描仪,有一个这样的样本 尽管那里有评论,但我不确定为什么这里需要setTimeout 它是什么意思所以对话框没有释放应用程序?
cordova.plugins.barcodeScanner.scan(
// success callback function
function (result) {
// wrapping in a timeout so the dialog doesn't free the app
setTimeout(function() {
alert("We got a barcode\n" +
"Result: " + result.text + "\n" +
"Format: " + result.format + "\n" +
"Cancelled: " + result.cancelled);
}, 0);
},
// error callback function
function (error) {
alert("Scanning failed: " + error);
},
// options object
{
...
}
答案 0 :(得分:0)
警报,确认和提示不属于常规JavaScript,这些API由浏览器供应商提供,并且同步本质上。每当警报,确认和提示被称为Javascript线程阻塞并等待用户与这些进行交互时,在那一刻整个VM(javascript执行线程)被阻止并且什么都不做。