我从SAP获得了一个适用于barcodeScanner wildabeast cordova插件的教程。 从教程开始,它有一个index.html本身用于调用函数。然后我将它植入我的应用程序的index.html,代码是这样的:
<div data-role="content" style="text-align: center">
<h3 style="color: blue">Selamat datang.</h3>
<button onclick="scan()">Scan QR Code</button> <!-- call function scan() from barcodescanner.js -->
<a href="#manual" class="ui-btn">Masukkan Kode</a>
<div id="scan_results"></div> <!-- unknown -->
</div> <!-- /contain -->
和barcodescanner.js是这样的:
document.addEventListener("deviceready", init, false);
function init() {
}
function scan() {
log("scanning");
cordova.plugins.barcodeScanner.scan(scanSuccessCallback, scanErrorCallback);
}
function scanSuccessCallback(result) {
log(JSON.stringify(result));
/*
alert("We got a barcode\n" +
"Result: " + result.text + "\n" +
"Format: " + result.format + "\n" +
"Cancelled: " + result.cancelled);
*/
}
function scanErrorCallback(error) {
alert("Scanning failed: " + JSON.stringify(error));
}
function encode() {
log("encoding");
if (device.platform == "Android") { //Not supported on iOS
var stringToEncode = "http://www.sap.com";
cordova.plugins.barcodeScanner.encode(cordova.plugins.barcodeScanner.Encode.TEXT_TYPE, stringToEncode, encodeSuccessCallback, encodeErrorCallback);
}
else {
log("Encoding is not supported on iOS. See https://github.com/wildabeast/BarcodeScanner/issues/106");
}
}
function encodeSuccessCallback(result) {
log(JSON.stringify(result));
}
function encodeErrorCallback(error) {
alert("Encoding failed: " + JSON.stringify(error));
}
function log(line) {
var results = document.getElementById("scan_results");
results.innerHTML+= "<br>" + line;
}
我想将扫描结果保存到LocalStorage,结果不会显示在应用程序中。有人可以帮助我这样做吗? 提前谢谢!
答案 0 :(得分:0)
LocalStorage实际上只是一个与其他对象一样的对象。选择一个属性名称,然后使用getters和setter,如:
localStorage.setItem('item1', '8383838838');
localStorage.getItem('item1');
或者简单地说:
localStorage.item1 = '8383838838';
请注意,如果您想在其中存储对象,则必须首先对其进行字符串化。
这不应该是现代浏览器的问题,但在使用此API之前,请务必先检查LocalStorage是否存在。