element ui中input在输入一个字符或者删除一个字符就会失去光标,需要重新聚焦的才能继续操作的原因
今天在修改前段页面,添加字段展示的时候出现了一个问题,之前从来没有遇到过,就是el-input输入框输入一个字符之后就失去了光标聚焦,要想重新输入之后,就必须要重新点击光标聚焦才行;
排查之后才发现是绑定的key的原因;我的el-input是循环生产的,需要绑定一个key值,key值我用了一个userId,乍一看没什么问题,问题就在我后续的操作上,我在v-model的时候,也用了一个userId,
这样就造成了,当我修改userId的时候,就会造成key值修改,然后对应的DOM也会重新渲染,所以就会造成上述问题;
<el-input v-for="params of managerUserList" :key="params.userId" //key值也用了userId v-model="params.userId"> <template slot="prepend">{{params.name}} </template> </el-input>
修改后的代码为:
<el-input v-for="params of addManagerForm.managerUserList" :key="params.loginName" v-model="params.userId"> <template slot="prepend">{{params.name}}</template> </el-input>
key值是唯一标识元素的标志