bug描述:Vant + Vue 技术
需求:一个表格中有至少两条数据,每条数据都有input框,在失去焦点后需要展开表头,获取焦点时收回表头。
触发:在点击一个input框后接着点击另一个input框,使第一个input框的失去焦点为第二个input框的获得焦点,触发事件,会导致顶部表头先展开再收回,造成页面抖动。
<van-field
type="number"
v-model="row.completionRate"
name="completionRate"
placeholder="请输入"
:rules="[{ required: true,}]"
@focus="inputFocus($event)"
@blur="inputBlur($event)"
/>
methods:{
inputFocus(Event) {
this.$emit('change',1);
},
inputBlur(e) {
if(!e.relatedTarget || e.relatedTarget.className == 'el-input_inner') {
this.$emit('change',2);
}
}
}