Vue+Element ui input输入框,扫码枪触发 enter事件,多次快速扫描会出现字符丢失的问题(已解决)

本文主要介绍了在扫码枪应用中遇到的输入字符丢失问题。问题出现在当扫码枪快速触发多次enter事件时,第二次及后续的字符会丢失。为了解决这个问题,作者调整了代码逻辑,改为在赋值后立即清空input框,而不是等待接口返回后再清空。这样做确保了即便服务器响应较慢,也能正确处理连续快速的扫码输入,避免了字符丢失的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

input输入框,扫码枪触发 enter事件,多次快速扫描 第二次字符会丢失

修改之前代码:

在接口返回过来值之后,将input框值清空掉
在这里插入图片描述
这样写用键盘enter键快速触发多次,也不会有任何问题,但是使用扫码枪快速扫描,字符就会出现丢失现象

修改后代码:

赋完值后,就清空掉。

因为由于服务器运行过慢,接口返回结果需要时间,如果按照之前的思路,接口返回过来值之后,再清空输入框,这时,扫码枪多次扫描,就会有问题。
在这里插入图片描述

正确代码:

  getInput() {
      this.queryParams = {
        code: this.barcode,
        name: this.pageOrderName,
      };
      this.barcode = "";
      operatePos(this.queryParams).then((res) => {
        this.name = "";
        if (res.code == 0) {
          // 开启自动播放
          this.audio.autoplay = true;
          this.audio.src = this.successUrl;
          this.sonList = res.data;
          this.resSize = this.sonList.platsize;
          this.$infoMsg.showInfoMsg(res.msg, this);
        } else {
          // 开启自动播放
          this.audio.autoplay = true;
          this.audio.src = this.errorUrl;
          this.$infoMsg.showErrorMsg(res.msg, this);
        }
      });
   },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝胖子的多啦A梦

你的鼓励是我最大的创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值