一次扫描多个条形码,当用户完成扫描并存储结果时,它应该返回到屏幕



我正在开发一个带有 ionic 3 的移动条码扫描器应用程序,并针对 android 和 iOS 设备,但现在我被困在这里。 在应用程序中,我必须扫描条形码并显示它。最初的要求只针对一种产品,但现在根据新要求,该应用程序应允许用户一次扫描多个条形码,当用户完成扫描并将结果存储在现有div(array( 中时,它应该返回屏幕。 我已经设法使用以下代码在页面中显示一个产品条形码扫描结果:-

scan()  
{   
this.options = {
prompt : "Scan your barcode"
}
this.barcodeScanner.scan(this.options).then((barcodeData) => {   
console.log(barcodeData);     
this.scanData = barcodeData.text;   
},(err) => {    
console.log("Error occurred : " + err);    
});    
} 

你能帮我吗?如何一次扫描多个条形码

我会让 scan 返回一个带有结果的承诺并将其存储在数组中,然后遍历数组以呈现结果。

像这样:

scan(){
return new Promise((resolve, reject)=>{
this.options = {
prompt : "Scan your barcode"
}
this.barcodeScanner.scan(this.options).then((barcodeData) => {   
resolve(barcodeData.text);   
},(err) => {    
reject(err);    
});    
})
}

像这样使用:

const scans=[]
{
scan().then((scanData)=>{
scans.push(scanData);
renderScanList(scans) //you can figure this part out
})
.catch(err=>{/*display error*/})
}

最新更新