需求:

       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)
      }
    },

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐