背景:在真机浏览/调试中发现,在input中绑定bindinput后,在bindinput的事件中加一个console,在input失去焦点后,vconsole中可以看到打印结果,代表失去焦点触发了bindinput事件。
具体的实现方式是:
1.在data中增加变量isClear: false
2.在点击清空按钮时,除了做基本的数据清空操作外,增加了将isClear赋值为true,证明是点击了清空按钮
3.在bindinput绑定的事件中,增加了判断:
if (this.data.isClaer) {
this.setData({
isClaer: false
})
return
}
// 接下来是正常的处理赋值逻辑
在点击清空按钮,input失去焦点触发的bindinput事件中,会将变量isClaer恢复初始值,并return。
在其他正常的input失去焦点而触发的bindinput事件中,由于没有涉及到input中value的改变,不会影响。
console中可以看到打印结果,代表失去焦点触发了bindinput事件。