我在Android應用程序中使用Barcodescannerplugin for Phonegap時遇到了JavaScript問題。我如何設置一個本地變量在JavaScript中作爲參數使用的函數?
我使用的插件帶了一個小的Javascript來啓用在我的Phongap應用程序中使用Barcodescanner。但在我看來,提供的javascript函數的接口並不是最佳的,因爲我不想在使用這些方法的每個位置上執行錯誤處理。
這就是爲什麼我試圖讓這個界面更容易的方式,我只需要調用一個方法scanBarcode()
和調用腳本從掃描或沒有,如果失敗的東西獲取文本。下面是代碼:
function scanBarcode(){
var resultText = '';
window.plugins.barcodeScanner.scan(
function(result) {
if (!result.cancelled){
resultText = result.text;
}
},
function(error) {
alert("Scanning failed: " + error);
}
);
return resultText;
}
我使用的插件,可以發現:Github Phonegap Plugins Android/BarcodeScanner
我的方法的結果總是相同的,一個空字符串。 我認爲原因是變量的範圍,但我不知道如何解決這個問題。
OK,所以是不是有什麼辦法,使這些接口更容易在我嘗試的方式嗎? –
好的,謝謝,我會嘗試這些例子,因爲我們在這些Web應用程序中也使用jQuery Mobile。 –
嗨Rich,我已經使用你的examplecode和jQuery Mobile了。結果是我得到一個對象,但我無法將掃描的字符串取出。或者否則,我不理解API文檔,如果我認爲給延遲對象的resolve方法賦予的參數是返回給所有callbackmethods的值?我試過類似的東西:\t function clickScanBarcode(){ \t \t var result = scanBarcode(); \t \t alert(result); \t} –