需求:
1.进入页面输入框自动获取焦点,可以直接扫描。
2.扫描完第一个输入框,第二个输入框自动获取焦点进行扫描。
注:自动获取焦点的同时,要隐藏软键盘,用户点击输入框,软键盘才可以出来
代码:
focus:获取焦点
<input
class="box-search-input"
v-model="storeLocation"
confirm-type="search"
@confirm="confirmLocation"
@input="getInputValLocation"
:focus="focusKuwei"
@blur="blurLocation"
/>
页面进入输入框自动获取焦点,并且隐藏软键盘的代码
onShow() {
// 页面初始化进来库位获取焦点
this.focusKuwei = true
// 隐藏软键盘
uni.hideKeyboard()
// 解决软键盘闪现问题
this.hide()
},
methods: {
hide(){
// 只是解决软键盘的闪现
var interval = setInterval(function(){
uni.hideKeyboard();//隐藏软键盘
console.log('刷新')
},60);
setTimeout(() => {
clearInterval(interval);
console.log('停止刷新')
},2000);
},
},
第一个输入框扫描完成,第二个输入框自动获取焦点的代码
第一个输入框回车后,给第二个输入框获取焦点
confirmLocation() {
console.log('第一个输入框失去焦点了');
if(this.storeLocation !== '') {
console.log('第一个输入框不为空');
this.focusMateria = false; // 初始化 第二个输入框focus 属性
setTimeout(() => {
this.focusMateria = true; // 第二个输入框获取焦点。
uni.hideKeyboard() //隐藏软键盘
this.hide() // 解决软键盘闪现
},1000)
}
},