uni-app PDA激光扫条形码功能开发

47 篇文章 0 订阅
42 篇文章 0 订阅

只针对激光扫条形码 不能触发pda打开摄像头

<input
type="text" 
v-model="goodName" 
:focus="isFocus" 
@blur="blur" 
@confirm="confirm" 
@input="input" placeholder="请输入商品名称或商品编号" class="patientName" />

这里一定要用v-model的方法去绑值 不要用:value 方便做扫码后清除数据的功能
默认 “isFocus”:true 这样进来可以触发焦点事件可以直接扫(focus 属性, 只要他为 true 我们就可以自动唤起弹窗)
@confirm方法触发扫码后你需要操作的事件方法 如果扫码后需要调用接口取数据的话就用这个方法
@input 可以捕捉你在input框内输入的内容
@blur 失去焦点后重新设置焦点 例如你扫后可以继续扫

input (e) {
	this.goodName = e.detail.value;
	this.isFocus = false;
},
confirm (e) {
	this.addScanGoods();
	//这里扫码后新增数据
},
focus () {
	setTimeout(function(){
	       uni.hideKeyboard();//隐藏软键盘:隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作
	       // plus.key.hideSoftKeybord();//隐藏软键盘:隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作
	},250); 
},
blur () {
	console.log('失去焦点重新设置焦点');
	this.isFocus = true;
},

失焦问题
1.设置了 输入框的聚焦属性,但扫码一次后就会失去焦点输入框失去焦点时重新在blur事件中重新设置焦点
2.点击页面上除了输入框的其他位置,也会导致输入框的失焦问题给整个页面的根节点设置点击事件,重新获取焦点
3.还需要在mainfest.json配置文件关闭沉浸式,否则无法获取焦点。

如果还是不行 可以在最外面再加一个view

<view class="" @tap="setFocus()"></view>
setFocus () 
{
	console.log('重新获取焦点');
	//alert('setfocus');
	this.isFocus = false;
},
  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
开源uni-app是一种跨平台的应用开发框架,可以实现在多个平台上开发应用程序。PDA(便携式数据终端)功能可以用于描条码或二维码,并将描的数据存入数据库中。 首先,需要在uni-app中引入PDA描的相关插件或组件,例如uni-PDA插件。通过该插件,可以调用PDA设备的功能,并获取到描到的数据。 然后,创建一个数据库,并建立相应的表来存储描到的数据。可以使用uni-app的本地数据库或者远程数据库(如MySQL、MongoDB等)。 在uni-app中,编写前端页面,包括描按钮和显示描结果的区域。通过监听描按钮的点击事件,调用PDA插件进行描操作,并获取到描结果。将描结果显示在页面上,并同时将结果存入数据库中。 在后端,编写相应的接口来接收前端传递的描数据,并将数据存入数据库。可以使用后端开发框架如Node.js、Spring Boot等来完成接口的编写和数据库的连接操作。 最后,在uni-app的页面中,可以添加查询按钮或搜索框,通过调用相应的接口从数据库中查询对应的描结果,并在页面上展示查询结果。 总结来说,使用开源uni-app开发PDA描存入数据库的功能需要引入PDA描插件或组件,建立数据库并创建对应的表,编写前端页面和后端接口来实现描和存入数据库的操作,并可以通过查询功能来展示描结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值