前言:pc端的登录用回车更简单方便,但是element的键盘事件好像只有input可以加,也只能选中才可触发,非常不友好

在网上找到如下解决方法:

<el-button @click.native.prevent="handleLogin" @keyup.enter.native="loginEnter('loginData')">登录</el-button>

加入这段代码:

created(){
	var _self = this;
	document.onkeydown = function(e){
		if(window.event == undefined){
			var key = e.keyCode;
		}else{
			var key = window.event.keyCode;
		}
		if(key == 13){
			_self.loginEnter('loginData');
		}
	}
}

就可以直接用了:

methods:{
	loginEnter(){
		// 加入axios代码 ...
	}
}

但是今天发现这样好用是好用 但是登录后再次点击回车还会触发此事件 又加入如下代码:

methods:{
	loginEnter(){
		// 加入axios代码 
		this.$axios({
			
		}).then(function(result){
			// 在请求成功后把document.onkeydown置为undefined
			document.onkeydown = undefined;
		}).catch(function(err){

		})
	}
}
Logo

前往低代码交流专区

更多推荐