项目相关背景:
遇到的问题:
例如:切换input框,键盘调不起来:
<u-form-item prop="userName" :borderBottom="false" @click="inpuFocus('userName')">
<u-input v-model="form.userName" :focus="inputActive == 'userName'" @blur="inputActive = ''" placeholder="请输入用户名">
<template slot="suffix">
<u-icon @click="clear('userName')" v-if="form.userName" name="close-circle-fill" color="#11AC85" size="20"></u-icon>
</template>
</u-input>
</u-form-item>
<u-form-item prop="password" :borderBottom="false" @click="inpuFocus('password')">
<u-input v-model="form.password" type="password" :focus="inputActive == 'password'" @blur="inputActive = ''" placeholder="请输入密码">
<template slot="suffix">
<u-icon @click="clear('password')" v-if="form.password" name="close-circle-fill" color="#11AC85" size="20"></u-icon>
</template>
</u-input>
</u-form-item>
问题的分析:
例如:第一次点击的时候,由于直接触发了实去焦点功能,导致clear没有清楚掉数据,但是clear方法执行了。
具体解决方案:延迟调用
inpuFocus(data) {
setTimeout(()=>{
this.inputActive = data
}, 200)
},