怎么解决el-input中clearable为true时处理clear事件时blur同时触发
时间: 2024-02-20 21:58:36 浏览: 199
Vue v-for中的 input 或 select的值发生改变时触发事件操作
当 el-input 组件的 clearable 属性为 true 时,点击清空按钮会触发 clear 事件,但同时也会触发 blur 事件,导致一些不必要的问题。为了解决这个问题,可以在 clear 事件处理函数中使用 setTimeout 函数将 blur 事件的触发延迟一段时间,让 clear 事件先执行完毕,如下所示:
```html
<el-input v-model="inputValue" clearable @clear="onClear"></el-input>
```
```javascript
methods: {
onClear() {
setTimeout(() => {
// do something else
// ...
}, 100);
}
}
```
在上面的代码中,使用了一个延迟时间为 100 毫秒的 setTimeout 函数来延迟 blur 事件的触发,这样就可以保证 clear 事件先执行完毕,再触发 blur 事件,避免了一些不必要的问题。
阅读全文