<script>
export default {data() {return {}},mounted() {// 监听按键var code = ''var lastTime, nextTime // 上次时间、最新时间var lastCode, nextCode // 上次按键、最新按键document.onkeypress = (e) => {// 获取按键if (window.event) { // IEnextCode = e.keyCode} else if (e.which) { // Netscape/Firefox/OperanextCode = e.which}// 如果触发了回车事件(扫码结束时间)if (nextCode === 13) {if (code.length < 3) return // 手动输入的时间不会让code的长度大于2,所以这里只会对扫码枪有this.codeFind(code) // 获取到扫码枪输入的内容,做别的操作code = ''lastCode = ''lastTime = ''return}nextTime = new Date().getTime() // 记录最新时间if (!lastTime && !lastCode) { // 如果上次时间和上次按键为空code += e.key // 执行叠加操作}// 如果有上次时间及上次按键if (lastCode && lastTime && nextTime - lastTime > 30) { // 当扫码前有keypress事件时,防止首字缺失code = e.key} else if (lastCode && lastTime) {code += e.key}lastCode = nextCodelastTime = nextTime}},methods: {// 业务逻辑根据项目更改codeFind(code) {if ([123456, 789101].indexOf(code) >= 0) {alert('code已经存在')}}}
}
</script>

vue实现扫码枪监听相关推荐

  1. vue,watch监听数据,数据监听

    vue,watch监听数据,数据监听 三个值: 1.第一个handler:其值是一个回调函数.即监听到变化时应该执行的函数. 2.第二个是deep:其值是true或false:确认是否深入监听.(一般 ...

  2. vue输入框输入触发事件_.vue文件中监听input输入事件oninput详解

    .vue文件其实是一个组件,关于它的说明我之前也写过一篇文章,地址:.vue文件,今天这篇文章要讲的是.vue文件中监听input的输入值变化事件.需求是这页面中,改变input的值,就调用一个事件, ...

  3. vue/xx/事件监听,按键与键码值

    vue中的事件监听 <!DOCTYPE html> <html lang="en"><head><meta charset="U ...

  4. VUE 2 无法监听数组和对象的某些变化

    一.数组 1.  不能监听的情况 (1) 直接通过下标赋值  arr[i] = value (2) 直接修改数组长度 arr.length = newLen 2.  替代做法 (1)修改值 1. Vu ...

  5. vue里面watch监听当前路由信息

    vue里面watch监听当前路由信息 开发中有这么个小需求,就是重复路由不触发生命周期 监听路由触发初始化方法 watch: {'$route': function () {this.init()}} ...

  6. vue用watch监听对象,打印oldValue和newValue相同的问题

    vue用watch监听对象,打印oldValue和newValue相同的问题 背景 做节目设计器时候,当组件超出限制大小时,需要回滚此次操作,但是数据没有备份,拿不到旧数据.因此在watch中监听变化 ...

  7. vue 键盘事件监听

    原文链接: vue 键盘事件监听 上一篇: 使用环形队列触发延时任务 下一篇: vue 一次失败的dom游戏制作 参考 https://cn.vuejs.org/v2/guide/events.htm ...

  8. vue输入框输入触发事件_详解.vue文件中监听input输入事件(oninput)

    详解.vue文件中监听input输入事件(oninput) .vue文件其实是一个组件,关于它的说明我之前也写过一篇文章,地址:.vue文件,今天这篇文章要讲的是.vue文件中监听input的输入值变 ...

  9. Vue使用watch监听一个对象中的属性

    问题描述 Vue提供了一个watch方法可以让使用者去监听某些data内的数据变动,触发相应的方法,比如 queryData: {name: '',creator: '',selectedStatus ...

最新文章

  1. Python 之 random模块
  2. 图解VC++ opengl环境配置和几个入门例子
  3. golang map的定义语法
  4. test of duplicate control id
  5. php 字符串索引值,PHP:字符串索引不一致?
  6. 为刚開始学习的人答效率的问题
  7. 学生签到系统c代码_c语言学生签到
  8. winform调用大华相机
  9. Arm Compiler 5 在 Keil MDK 5.37中不可用
  10. 数据库MySQL学习心得
  11. FPGA 之 SOPC 系列(三)Nios II 体系结构
  12. 达人评测 i7 12700F和i5 12400F区别 i7 12700F和i5 12400F对比
  13. 两个三进制数相加,输出一个结果为三进制形式的和
  14. 《极简算法史》读书札记
  15. Windows文本框星号密码查看器
  16. 周报(水管工问题,和图的遍历)
  17. 机器学习_深度学习毕设题目汇总——目标检测B
  18. python求二叉树高度_求二叉树高度代码报错,求大佬解答
  19. 计量经济学第1章计算机,周曙东教授计量经济学第1章.ppt
  20. 程序员的品格:羞耻心、同理心与榜样的力量

热门文章

  1. FXAA白皮书的翻译和理解补充
  2. C++常对象,常变量,常成员函数详解(含添加内容)
  3. AD中的所有域帐户经常被锁定
  4. 【Windows 7 Wifi 热点】无法启动承载网络 连到系统上的设备没有发挥作用
  5. 【零基础学JS -4 】Javascript的变量-var let const
  6. 计算机二级考试非选择题攻略,计算机二级考试:题库抽的不是题是“命”!附赠考试通关全攻略!...
  7. 你不知道的并发/继发请求操作
  8. 原型设计转html5,H5的交互原型设计
  9. c++11之std::move函数
  10. 获取事件类型及阻止默认行为