gpt4 book ai didi

javascript - PhoneGap BarcodeScanner 导致 iOS 应用挂起

转载 作者:行者123 更新时间:2023-11-30 10:29:16 35 4
gpt4 key购买 nike

我有一个正在运行的 PhoneGap 应用程序,我正在尝试向其添加 QR 扫描仪。为此,我使用了 PhoneGap Build 的 BarcodeScanner 插件。我遇到的问题是,在扫描完成后,警报会导致应用程序卡住。

相关的JavaScript是

var options=""
options += '<p>'+formData["form"][formPart][1]+'</p>'
options += '<a data-role="button" data-rel="dialog" formPart="'+formPart+'"id="Cap-'+formPart+'">Capture Image</a>'
options += '<p id="Cap-Data"></p>'
$('#formContent').append(options);
$('#Cap-'+formPart).on("tap",function(event){
var scanner = cordova.require("cordova/plugin/BarcodeScanner");
scanner.scan(
function (result) {
var FP = $(this).attr("formPart");
$('#Cap-Data').html(result.text);
alert(result.text);
},
function (error) {
alert("Scanning failed: " + error);
}
);
});

如有任何帮助,我们将不胜感激。

最佳答案

问题是 alertprompt 等函数会完全停止执行,直到它们返回。尝试将警报代码放入 setTimeout() 虽然不需要超时,但您可以将其设置为 0 毫秒。所以它会立即发生但不会阻塞流程。

setTimeout(function() {
alert(result.text);
}, 0);

This question可能会很好地了解为什么 setTimeout(fn, 0) 在这些情况下有帮助。

关于javascript - PhoneGap BarcodeScanner 导致 iOS 应用挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17928504/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com