enter对应的keycode_vue 添加enter回车事件

问题所在:今天遇到一个需求,给el-button组件添加点击事件,之前对这块一直一知半解,所以特此总结一下

解决方法:

Vue 允许为 v-on 在监听键盘事件时添加按键修饰符,所以对一个普通的Vue input组件,可以这样实现一个回车事件:

//当点击了回车时,便会调用function函数

但是对于开发来说,键盘事件对应的keyCode比较难记,所以Vue 为常用的按键设置了别名,这样我们就无需再去匹配keyCode,直接使用别名就能监听按键的事件。

(别名可参考:https://blog.csdn.net/qq_38591756/article/details/88732443)

所以上面的代码,等同于:

//当点击了回车时,便会调用function函数

还有一种缩写语法(比较常用):

//当点击了回车时,便会调用function函数

注意:

但是,如果是在自己封装的组件或者是使用一些第三方的UI库(比如element-ui)时,会发现并不起效果,这时就需要用到.native修饰符了,如:

v-model="inputName"

placeholder="输入你的名称"

@keyup.enter.native="searchPerson"

>

在使用过程中,如果页面只针对一个Input添加键盘enter事件,可以按照上面的情况解决。但是如果是要对页面的button添加enter键盘事件,就不能写在input或者button上,因为获取不到焦点,这时候可以直接写在created或者mounted里,直接绑定在document上。如下:

mounted() {

let that = this

document.onkeydown = function (e) {

e = window.event || e

//保证是在登录页面发出的enter事件

if ((that.$route.path === '/login'||that.$route.path === '/') && (e.code === 'Enter' || e.code === 'enter')) {

//调用登录函数

that.login();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值