详解Vue的键盘事件

2023-08-21  本文已影响0人  扶得一人醉如苏沐晨

一、键盘事件介绍

键盘事件是用户通过打字机输入字符的过程中触发的事件。Vue.js提供了四种键盘事件:

系统修饰键(用法特殊):ctrl、alt、shift、meta

二、Vue中的使用

2.1、vue中常用的键盘别名

回车 => enter
删除 => delete (捕获“删除”和“退格”键)
退出 => esc
空格 => space
换行 => tab (特殊,必须配合keydown去使用)
上 => up
下 => down
左 => left
右 => right

2.2、Vue未提供别名的按键,可以使用按键原始的key值去绑定

2.3、系统修饰键 (用法特殊) : ctr1、alt、shift、meta

三、Vue中的使用键盘别名注意事项

3.1、html元素使用

 <div @keydown.enter="enterKeyDown"> </div>

3.2、自定义组件和ElementUI上面需要加上.native修饰符

 <el-button @keydown.enter.native="enterKeyDown"> </div>

四、键盘事件不触发的问题

由于键盘事件的触发需要有焦点
在input中绑定是没有问题的(光标在input框内)

但是在元素或者按钮上面是没有焦点的,所以需要认为添加监听

   /* 创建keyDown事件 */
    createKeyDown() {
      document.onkeydown = (e) => {
        console.log(e);
        if (e.code === "Enter") {
          // this.handleSaveAndAddBox();
        }
      };
    },
    /* 销毁keyDown事件 */
    destroyedKeyDown() {
      document.onkeydown = (e) => {
        if (e.code === "Enter") {
        }
      };
    },
 created() {
    this.createKeyDown();
  },
  beforeDestroy() {
    this.destroyedKeyDown();
  },
上一篇下一篇

猜你喜欢

热点阅读