解决element组件input框的autofocus只触发一次
<i class="icon iconfont icon-edit-p" v-if="!editAtlasBool" @click="showInput"></i>
<el-input v-if="editAtlasBool" :placeholder="newAtlasName" ref="atlas-name-input" v-model="atlasName" maxlength="20" @blur="atlasBlur(atlasName)"></el-input>
<i class="icon iconfont icon-edit-p" v-if="!editAtlasBool" @click="showInput"></i>
现在的需求是当点击icon图标的时候input框 与span标签切换显示,默认input框显示的时候需要自动获取焦点,首次点击icon是可以的 后面再次切换就不行,原先是在el-input标签上面添加了autofocus属性
可以使用原生的focus事件自动触发
showInput(){ this.editAtlasBool = true this.$nextTick(()=>{ //自动获取焦点 element组件autofocus失效 this.$refs['atlas-name-input'].$refs.input.focus() }) },
代码搬运工