angular - 一次扫描多个条形码,当用户完成扫描并存储结果时,它应该返回屏幕
问题描述
我正在开发一个带有 ionic 3 并针对 android 和 iOS 设备的移动条形码扫描仪应用程序,但现在我被困在这里。在我必须扫描条形码并显示它的应用程序中。最初的要求仅适用于一种产品,但现在根据新要求,该应用程序应允许用户一次扫描多个条形码,并且在用户完成扫描后应返回屏幕并将结果存储在现有的分区(数组)。我已设法使用以下代码在页面中显示一个产品条形码扫描结果:-
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(){
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*/})
}
推荐阅读
- php - Laravel 注册认证错误;怎么修?
- javascript - 当面板在右侧时,如何将 VSCode 终端拆分方向更改回垂直
- java - 正在运行的 Alertdialog 不会关闭或取消
- javascript - React - 更新数组内对象内的对象
- javascript - 如何使用图像 JavaScript 文件对象作为图像 src ( )
- python - 如何将线程中的值存储到数据框中,同时从所述数据框中提取值?
- swift - ARSCNView 缩放相机源
- c++ - 使用用户输入乘以变量
- gitlab-ci - 设置适用于 CI 配置中所有作业的变量/配置
- scala - 为什么 Spark DataSet 会丢失其所有架构并仅返回 byte[]?