关于@blur和@click或者@tap冲突问题
网上大部分是让失去焦点的方法的setTimeout延时执行达到点击效果,当然要求不高没问题。测试设置300ms以上才会有效,但是如果是一个弹出框延时300ms明显有点卡顿的感觉。所以有了下面的思路。
onUnFocus() {
this.showView = false
setTimeout(() => {
this.inputIsShow = false
}, 500)
},
结合下面体验效果杠杠的
<view v-if="inputIsShow" :style="{ opacity: showView ? 1 : 0 }"></view>