之前遇到一个问题:在el-input框同时绑定回车和失焦事件,两个事件触发的函数是一样的,回车的时候触发一次紧接着失焦也触发一次,导致回车一次触发两次函数。

 <el-input v-model="msg" @blur="updateData"  @keyup.enter.native="updateData"></el-input>
methods: {
       updateData() {... //更新操作}
    }

解决办法

<el-input v-model="msg" @blur="updateData"  @keyup.enter.native="enterBlur($event)"></el-input>
methods: {
       updateData(event) { ... //更新操作},
        
        //回车失去焦点
        enterBlur(event) { event.target.blur() }
    

如果是有参数的可以如下:

<el-input v-model="it.data" @blur="updateData(row,it)"  @keyup.enter.native="enterBlur($event,row,it)"></el-input>
methods: {
       updateData(row,it) { ... //更新操作},
        
        //回车失去焦点
        enterBlur(event,row,it) { event.target.blur(row,it) }
    }

 

参考链接:https://blog.csdn.net/Zorephp/article/details/94659488